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.plot()
命令之间调用了plt.show()
时,数据集才会被擦除。因此,上面的示例实际上显示了这两个数据集。
比如
plt.plot(xdata, ydata1, 'r-')
plt.show()
...
plt.plot(data, ydata2, 'b--')
plt.show()
发布于 2016-12-22 16:34:17
只要在最后调用show()
即可。
发布于 2016-12-22 16:37:35
if DrawSecondDataset:
plt.plot(data, ydata2, 'b--')
plt.show() #to display it
发布于 2016-12-22 16:46:19
第一个数据不会以这种方式被擦除
plt.plot(xdata, ydata1, 'r-')
if DrawSecondDataset:
plt.plot(data, ydata2, 'b--')
plt.show()
https://stackoverflow.com/questions/41287741
复制相似问题