Python matplotlib将仅显示最后一个绘图(不能叠加绘图)
我的代码使用了几个plt.plot()指令来叠加曲线,直到今天,这些指令都能正常工作。现在看起来最后一个plt.plot()将删除前面的plt.plot(),因此我无法叠加它们Python matplotlib将仅显示最后一个绘图(不能叠加绘图),python,matplotlib,Python,Matplotlib,我的代码使用了几个plt.plot()指令来叠加曲线,直到今天,这些指令都能正常工作。现在看起来最后一个plt.plot()将删除前面的plt.plot(),因此我无法叠加它们 import matplotlib.pyplot as plt X = [i for i in range(5)] plt.plot(X,[0]*5) plt.plot(X,[1]*5) plt.show() 它不会像我之前做的那样得到两行,而是只显示最后一行。我不明白为什么会发生这种情况,特别是因为我不记得更新过库。
import matplotlib.pyplot as plt
X = [i for i in range(5)]
plt.plot(X,[0]*5)
plt.plot(X,[1]*5)
plt.show()
它不会像我之前做的那样得到两行,而是只显示最后一行。我不明白为什么会发生这种情况,特别是因为我不记得更新过库。你知道为什么会这样吗?
谢谢试试这个:
plt.plot(X, [0]*5, 'r--', X, [1]*5, 'g^')
plt.show()
您的代码与我的python和matplotlib版本配合使用,因此我不能保证此替代解决方案对您有效,但您可以尝试创建一个图形,然后向其中添加绘图,如下所示:
import matplotlib.pyplot as plt
fig = plt.figure()
X = list(range(5))
for y in range(2):
plt.plot(X, [y]*5)
plt.show()
这是你的真实代码吗?我的第一个猜测是,你在第一条曲线上画第二条曲线,但给出的例子没有这样做。如果你运行上面的代码,请发布你看到的图像。上面的代码只显示第二条曲线,y=1处有一条线,y=0处没有。我运行了你的代码,我在
y=0处有一条线,在y=1处有一条线,
。这并不能解释OP看到的东西,虽然它适用于这个简单的情况,但我需要使用循环,所以这不是我的解决方案。谢谢,不过没什么变化