【发布时间】:2017-01-10 16:49:04
【问题描述】:
在下面的代码中,我有两个单独的动画,我将它们绘制在两个单独的子图中。我希望他们两个都在一个情节中运行,而不是这个。我已经尝试过下面解释的方法,但它给了我如下所述的问题。请帮忙
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
import time as t
x = np.linspace(0,5,100)
fig = plt.figure()
p1 = fig.add_subplot(2,1,1)
p2 = fig.add_subplot(2,1,2)
def gen1():
i = 0.5
while(True):
yield i
i += 0.1
def gen2():
j = 0
while(True):
yield j
j += 1
def run1(c):
p1.clear()
p1.set_xlim([0,15])
p1.set_ylim([0,100])
y = c*x
p1.plot(x,y,'b')
def run2(c):
p2.clear()
p2.set_xlim([0,15])
p2.set_ylim([0,100])
y = c*x
p2.plot(x,y,'r')
ani1 = animation.FuncAnimation(fig,run1,gen1,interval=1)
ani2 = animation.FuncAnimation(fig,run2,gen2,interval=1)
fig.show()
我尝试创建一个子图而不是 p1 和 p2,并将两个图都绘制在该单个子图中。那只是绘制一个图表,而不是两者。据我所知,这是因为其中一个在绘制后立即被清除。
我该如何解决这个问题?
【问题讨论】:
标签: animation matplotlib graph