动画二维数组

时间:2019-03-28 03:37:33

标签: python animation

我正在尝试为2D数组设置动画,但是每个数组都有9行,由于某种原因,只绘制了前两行,之后图形又回到了第一个。我还想创建交互式文本,以便始终可以知道图形所处的位置。也许创建一个句子列表并使用它们,但是我不知道该怎么做。这就是我的代码的样子,并且显示了其中一个矩阵(后两个矩阵有些不同,这就是为什么我不得不在代码中使用[i] [:]的原因)。任何帮助将不胜感激,谢谢。

Matrixx=[]
Matrixx.append(Rekappa4_best)
Matrixx.append(Rekappa4_4percent)
Matrixx.append(Rekappa4_5percent)
Matrixx.append(Rekappa4_7percent)
Matrixx.append(Rekappa4_10percent)
Matrixx.append(Rekappa4_15percent)
Matrixx.append(Rekappa4_quarter)
Matrixx.append(Rekappa4_half)
Matrixx.append(Rekappa4)
Matrixx=np.array(Matrixx)

x1 = Matrixx
y1 = Matrixx2

x2 = Matrixx3
y2 = Matrixx4

x3 = Matrixx5
y3 = Matrixx6

fig = plt.figure()
ax = fig.add_subplot(111)
line, = ax.plot([],[], 'bo',markersize=4,label="linear change")
line2, = ax.plot([],[],'ro',markersize=4,label="quadratic change")
line3, = ax.plot([],[],'ko',markersize=4,label="step change(ep=sqrt(1.5))")
ax.set_xlim(-90, 90)
ax.set_ylim(-2,-0.5)
plt.legend(loc="best")
plt.grid()

def animate(i,factor):
    line.set_xdata(x1[i,:])
    line.set_ydata(y1[i,:])
    line2.set_xdata(x2[i,:])
    line2.set_ydata(y2[i,:])
    line3.set_xdata(x3[i][:])
    line3.set_ydata(y3[i][:])    
    return line,line2,line3

K = 0.75 # any factor 
ani = animation.FuncAnimation(fig, animate, frames=len(x), fargs=(K,),
                              interval=2000, blit=True)
plt.show()

0 个答案:

没有答案