Python pandas绘制更多列,但只显示一个图例

时间:2016-08-02 12:56:37

标签: python pandas plot legend

我想在同一个x轴上绘制两列。 y轴。但pandas-plot仅显示第二列的图例(因此第一列没有点)。当然,两个标签(列名)都显示在图例框中。

我的DataFrame是:

df = pd.DataFrame({'datetime':[dt.datetime(2016,1,1,0,0,0), dt.datetime(2016,1,4,0,0,0),
    dt.datetime(2016,1,9,0,0,0)], 'value':[10,7,8], 'value2':[12,4,9]})

我的情节是:

ax = df.plot(x='datetime', y='value', marker='o', linewidth=0)
df.plot(ax=ax, x='datetime', y='value2', marker='o', linewidth=0)

如果我绘制线条而不是"传奇"显示第一列,但它只是一个没有点的蓝线:

ax = df.plot(x='datetime', y='value', marker='o')
df.plot(ax=ax, x='datetime', y='value2', marker='o')

是否可以仅显示两个列的图例框(和图中)中的点?

谢谢!

1 个答案:

答案 0 :(得分:1)

您应该在调用第二个图后尝试调用图例:

ax.legend()

这就是我得到的:

enter image description here