Pandas(python)plot()没有传说

Bil*_*ain 42 python plot matplotlib pandas

在python中使用pandas库并使用

.plot()
Run Code Online (Sandbox Code Playgroud)

在数据框架上,如何在没有图例的情况下显示绘图?

Nip*_*tra 81

函数中有一个与图例对应的参数; 默认情况下,它是True

df.plot(legend=False)
Run Code Online (Sandbox Code Playgroud)

以下是该.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 = None, secondary_y = False,**kwds)

  • 确切地说,这不是真正正确的答案,因为使用`.plot()`会自动绘制图例,因此需要在之后将其删除.在大多数情况下,人们可能会选择使用`.plot(legend = False)`但有些情况下您没有这种选择.由于我刚遇到一个,我在下面添加了一个新答案. (2认同)

Imp*_*est 18

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

plt.gca().get_legend().remove()
Run Code Online (Sandbox Code Playgroud)

假设你有imported matplotlib.pyplot as plt

ax.get_legend().remove()
Run Code Online (Sandbox Code Playgroud)

if ax是图例所在的轴.

或者,如果有一些选择可以从一开始就关闭传奇,请参阅Nipun Batras的答案,在这种情况下,人们可以简单地使用

df.plot(legend=False)
Run Code Online (Sandbox Code Playgroud)

  • 如果您使用 Pandas **parellel_coordinates**,这一点至关重要,其中对 plot() 的调用隐藏在您无法轻松访问的代码中。使用 plt.gca().legend_.remove() **after** 调用 parallel_coordinates 成功关闭图例。 (3认同)