Анимация Python 2D массивов - PullRequest
0 голосов
/ 28 марта 2019

Я пытаюсь анимировать 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()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...