我有一个包含一些图表的脚本(参见示例代码)。在其他一些事情之后,我想为现有的一个添加一个新的情节。但是,当我尝试它添加最后创建的数字(现在图2)的情节。 我无法弄清楚如何改变......
import matplotlib.pylab as plt
import numpy as np
n = 10
x1 = np.arange(n)
y1 = np.arange(n)
fig1 = plt.figure()
ax1 = fig1.add_subplot(111)
ax1.plot(x1,y1)
fig1.show()
x2 = np.arange(10)
y2 = n/x2
# add new data and create new figure
fig2 = plt.figure()
ax2 = fig2.add_subplot(111)
ax2.plot(x2,y2)
fig2.show()
# do something with data to compare with new data
y1_geq = y1 >= y2
y1_a = y1**2
ax1.plot(y1_geq.nonzero()[0],y1[y1_geq],'ro')
fig1.canvas.draw
答案 0 :(得分:9)
由于您的代码无法运行且没有错误,因此我将提供一个示例代码段,展示如何在同一图表/图表中绘制多个数据:
import matplotlib.pyplot as plt
xvals = [i for i in range(0, 10)]
yvals1 = [i**2 for i in range(0, 10)]
yvals2 = [i**3 for i in range(0, 10)]
f, ax = plt.subplots(1)
ax.plot(xvals, yvals1)
ax.plot(xvals, yvals2)
所以基本的想法是为你需要绘制到同一图中的所有数据集调用ax.plot()
。