使用matplotlib

时间:2016-08-25 18:59:41

标签: pandas matplotlib charts line

我正在尝试绘制一条包含多条线的折线图,每组一条。 X轴是小时,y轴是计数。 由于数据帧中有3个组,因此我将在一个线图中有3个线。 这是我用过的代码,但不确定我哪里出错了。

Group      Hour           Count
 G1          1             40
 G2          1             300
 G1          2             400
 G2          2             80
 G3          2             1211

使用的代码:

fig, ax = plt.subplots()
labels = []
for key, grp in df1.groupby(['Group']):
  ax = grp.plot(ax=ax, kind='line', x='x', y='y', c=key)
  labels.append(key)
lines, _ = ax.get_legend_handles_labels()
ax.legend(lines, labels, loc='best')
plt.show()

1 个答案:

答案 0 :(得分:2)

您可以使用df.pivot并为自己保留一些行

df.pivot('Hour', 'Group', 'Count').plot(kind='line', marker='o')

enter image description here

G3被绘制为一个点,因为只有一个点(2小时,1211个计数)与之相关联。