pyplot:将图形添加到现有图表

时间:2016-12-22 16:32:41

标签: python matplotlib

为了使用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()

3 个答案:

答案 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()