Python “如何删除多余字符串”;Line2D";在matplotlib图例中
我在matplotlib图例的开头追加了一个字符串“Line2D”。如何摆脱它?重现此问题的简单python脚本如下所示:Python “如何删除多余字符串”;Line2D";在matplotlib图例中,python,matplotlib,Python,Matplotlib,我在matplotlib图例的开头追加了一个字符串“Line2D”。如何摆脱它?重现此问题的简单python脚本如下所示: import numpy as np import matplotlib.pylab as plt x=np.linspace(0,1,20) y=np.sin(2*x) z=np.cos(2*x) p1, = plt.plot(x,y, label='sin(x)') p2, = plt.plot(x,z, label='cos(x)') plt.legend([p1
import numpy as np
import matplotlib.pylab as plt
x=np.linspace(0,1,20)
y=np.sin(2*x)
z=np.cos(2*x)
p1, = plt.plot(x,y, label='sin(x)')
p2, = plt.plot(x,z, label='cos(x)')
plt.legend([p1, p2])
plt.show()
我得到了一个图,其中我想去掉图例中多余的字符串“Line2D”。我没有足够的声誉来发布图片。如果有必要的话,我是在用蟒蛇。
谢谢你的帮助 如果只将一个列表传递给
图例
,则必须是要显示的标签,而不是要显示其标签的对象。它正在将这些线对象转换为字符串,这将给出Line2D(…)
由于在创建线条标签时已为其提供了标签,因此无需将任何内容传递给
legend
。只需plt.legend()
将自动使用您提供的标签。您可以使用plt.legend(句柄=[p1,p2])
我需要15名代表投票。多伤心啊(有人能帮我吗?@CorruptedStack:你仍然可以通过点击投票按钮附近的复选标记来接受答案。(这也会为你自己赢得代表票。)有趣的是,我不得不等6分钟!