Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用matplotlib在x轴上自定义分类变量排序_Python_Matplotlib - Fatal编程技术网

Python 使用matplotlib在x轴上自定义分类变量排序

Python 使用matplotlib在x轴上自定义分类变量排序,python,matplotlib,Python,Matplotlib,我想按我指定的顺序订购x轴上的月份。我在谷歌上搜索了很多地方,想知道怎么做,但运气不好。我非常熟悉R语言,在R中使用因子类和它的级别可以很容易地做到这一点。但我对python比较陌生,我从阅读中学到的是,python中的category dtype与R中的factor最接近。然而,这两种语言中的类似乎有一个主要的行为差异。使用pyplot.bar()绘制时,没有对分类顺序进行排序,但在seaborn条形图中,相同的绘图顺序正确 pyplot.bar()的数据帧中是否有自定义分类变量顺序的选项

我想按我指定的顺序订购x轴上的月份。我在谷歌上搜索了很多地方,想知道怎么做,但运气不好。我非常熟悉R语言,在R中使用
因子类和它的级别可以很容易地做到这一点。但我对python比较陌生,我从阅读中学到的是,python中的
category dtype
与R中的
factor
最接近。然而,这两种语言中的类似乎有一个主要的行为差异。使用
pyplot.bar()
绘制时,没有对分类顺序进行排序,但在
seaborn
条形图中,相同的绘图顺序正确

pyplot.bar()的数据帧中是否有自定义分类变量顺序的选项

已解决

matplotlib的版本可能有错误。阅读后,我将版本更新为2.2.2,一切正常(即,axis按照设置类别时提供的顺序进行排序。我还使用下面的代码设置类别

TestData['Month'] = pd.Categorical(TestData['Month'], categories = MonthLabels , ordered = True)
这可能会有所帮助;从以下方面:

注意新分类数据不会自动排序。您必须显式传递
ordered=True
以指示已排序的
分类


尝试了,但没有成功。我将更改代码以反映这一点
TestData['Month'] = pd.Categorical(TestData['Month'], categories = MonthLabels , ordered = True)