具有熊猫数据框值的matplotlib条形图

时间:2020-05-14 17:15:06

标签: python pandas matplotlib bar-chart

我正在尝试使用matplotlib绘制一个非常简单的条形图,基础数据在以datetime时间戳作为索引的pd.dataframe中进行显示

但是尝试

ax = plt.subplot(111)
ax.bar(data.index, data[subset])

我得到了错误: TypeError :只能将size-1数组转换为Python标量

一种可行的解决方法是

ax.bar(data.index, [i[0] for i in data[subset].values.tolist()])

但是我很困惑为什么我不能使用pd.dataframe作为条形图的输入值。如果我使用完全相同的代码plot而不是bar,则一切正常。 我真的想在这里使用plt.bar,因为我正在构建更大的图,但这只是其中的一部分,因此df.bar并没有帮助。

1 个答案:

答案 0 :(得分:0)

您真的很亲密:

  df = pd.DataFrame({'lab':['A', 'B', 'C'], 'val':[10, 30, 20]})
  ax = df.plot.bar(x='lab', y='val', rot=0)

您需要调用df并在其上调用plot函数。