我有一个数据框,其中单词作为索引,我按列对DF进行排序。现在当我尝试用pyplot绘制它时,它总是按字母顺序排列x轴而不是pandas的行为。情节或海底。是否有任何其他方式保持我的订单,而不是使用数字按照我想要的方式订购,然后更改标签或不使用plt? (例如,这是解决方案here,但常见的answer是使用我知道可行的df.plot)
正如您在条形图中看到的那样,plt会考虑提供的顺序来设置色标,然后将列重新排序为字母。
这个问题不仅发生在我的情况下,而且每当我尝试使用字符串列作为x轴时。
In [95]:
income2012g10k = income2012[income2012['Income'] > 10000]
grouped10kC = income2012g10k.groupby('Region').count()
groupedC = income2012.groupby('Region').count()
groupedC['Income'] = grouped10kC['Income']
groupedC['Proportion'] = groupedC['Income']/groupedC['Country']
groupedC.sort_values('Proportion', inplace=True)
plt.figure(figsize=(12,4))
plt.bar(groupedC.index,groupedC['Proportion']
,color=sns.color_palette('Blues'))
sns.despine()
groupedC
Out[95]:
Country Income Proportion
Region
AFRICA 50 10 0.200000
OCEANIA 13 4 0.307692
ASIA 37 21 0.567568
NORTH AMERICA 20 13 0.650000
SOUTH AMERICA 12 9 0.750000
EUROPE 44 37 0.840909