没有图例的熊猫 plot()

Posted

技术标签:

【中文标题】没有图例的熊猫 plot()【英文标题】:Pandas plot() without a legend 【发布时间】:2014-01-18 20:53:12 【问题描述】:

在python中使用pandas库及使用

.plot()

在数据框上,如何显示没有图例的图?

【问题讨论】:

其实这个问题在这里已经有了答案:***.com/questions/5735208/… 【参考方案1】:

函数中有一个参数对应legend;默认为真

df.plot(legend=False)

下面是.plot()方法的定义

定义:df.plot(frame=None, x=None, y=None, subplots=False, sharex=True, sharey=False, use_index=True, figsize=None, grid=None, legend=True, rot =None, ax=None, style=None, title=None, xlim=None, ylim=None, logx=False, logy=False, xticks=None, yticks=None, kind='line', sort_columns=False, fontsize =无,secondary_y=False,**kwds)

【讨论】:

确切地说,这并不是真正的正确答案,因为使用.plot() 会自动绘制图例,因此需要在之后将其删除。在大多数情况下,可能会选择使用.plot(legend=False),但在某些情况下您没有这种选择。由于我刚遇到一个,所以我在下面添加了一个新答案。 这也可用于df.plot.bar() 等变体,使用df.plot.bar(legend=False)【参考方案2】:

要删除曾经绘制的图例,请使用

plt.gca().get_legend().remove()

假设您有imported matplotlib.pyplot as plt

ax.get_legend().remove()

如果ax 是图例所在的轴。

或者,如果可以选择从一开始就关闭图例,请参阅 Nipun Batras 的回答,在这种情况下,可以简单地使用

df.plot(legend=False)

【讨论】:

如果您使用的是 pandas parellel_coordinates,这一点至关重要,其中对 plot() 的调用隐藏在您无法轻松访问的代码中。 之后使用 plt.gca().legend_.remove() 调用 parallel_coordinates 成功关闭了图例。

以上是关于没有图例的熊猫 plot()的主要内容,如果未能解决你的问题,请参考以下文章

熊猫情节栏:情节中出现其他列的图例

在熊猫图中显示第一个和最后一个标签

传奇熊猫python中的“无”

图例中的误差条 - 熊猫条形图

将数据添加到现有绘图时更新图例(熊猫)

熊猫 .plot.hist() 和 .groupby()