为了使用python的matplotlib.pyplot在一个绘图中绘制两个图形,通常会这样做:
import matplotlib.pyplot as plt
xdata = [0, 1, 2, 3, 4]
ydata1 = [0, 1, 2, 3, 4]
ydata2 = [0, 0.5, 2, 4.5, 8]
plt.plot(xdata, ydata1, 'r-', xdata, ydata2, 'b--')
plt.show()
但是,我想仅在某些情况下绘制第二个数据集,如下所示:
plt.plot(xdata, ydata1, 'r-')
if DrawSecondDataset:
plt.plot(data, ydata2, 'b--')
不幸的是,第二次调用plot
意味着删除了第一个数据集。
如何在已有的情节中添加图表?
编辑:
正确答案指出,只有在两个plt.show()
命令之间调用plt.plot()
时才会删除数据集。因此,上面的示例实际上显示了两个数据集。
为了完整性:是否可以选择将图形添加到已调用plt.show()
的现有图表中?如
plt.plot(xdata, ydata1, 'r-')
plt.show()
...
plt.plot(data, ydata2, 'b--')
plt.show()
答案 0 :(得分:0)
最后请致电show()
。
答案 1 :(得分:0)
if DrawSecondDataset:
plt.plot(data, ydata2, 'b--')
plt.show() #to display it
答案 2 :(得分:0)
第一个数据不会以这种方式删除
plt.plot(xdata, ydata1, 'r-')
if DrawSecondDataset:
plt.plot(data, ydata2, 'b--')
plt.show()