Python 帕累托图问题

Python Pareto Chart issue

试图在 Python 中获得一个 pareto-chart 跟随

我在我的 Jupyter 笔记本中遵循这段代码

我没有得到 pareto 均匀增加,而是它的锯齿形和 x 标签按字母顺序排序,而不是按 country 排序,尽管 df.sort_values 在那里。

请提出问题所在。

似乎 matplotlib(又名 plt)强制对旧版本的 matplotlib 进行字母排序(您上次升级它是什么时候?)。您可以在此处查看有关解决方案和解决方法的更多信息和很好的答案:How to prevent alphabetical sorting for python bars with matplotlib? 特别是,只需设置一个数字索引:

df['Nation'] = ['USA', 'Canada', 'Russia', 'UK', 'Belgium', 'Mexico', 'Germany', 'Denmark']

然后df.index将保持数字顺序。