如何使用此数据绘制条形图

时间:2017-03-05 15:18:13

标签: python pandas matplotlib bar-chart

我有一个数据框,我过滤了列以获得i+j*n并且确实如此 x获取y = vl.groupby(['Model Year','Manufacturer']).size()的值。 现在,当我尝试绘制它时,我收到了一个错误。这是我第一次尝试遗漏某些东西。你能帮我吗?

y

我想绘制的是制造商的年份与汽车数量。

1 个答案:

答案 0 :(得分:2)

我认为您需要添加unstack来创建最后一级MultiIndex然后DataFrame.plot.bar的列:

print (y.unstack(fill_value=0))
      Chevrolet  Dodge  Ford
1991          1      0     1
1992          2      2     1
1993          3      2     2
1994          0      3     2

y = vl.groupby(['Model Year','Manufacturer']).size()
y.unstack(fill_value=0).plot.bar(width=0.1, align='center')

plt.show()

graph1

crosstab的另一种可能解决方案:

pd.crosstab(vl['Model Year'], vl['Manufacturer']).plot.bar(width=0.1, align='center')
plt.show()