Python 2.7中沿x轴的动画

时间:2016-03-10 21:27:58

标签: python arrays python-2.7 animation

我有三个数组填充了我想要仅在x轴上制作动画的值,我该怎么做?我查了一下,但到目前为止没有任何作用,想知道我是否遗漏了什么。

我希望每个数组中只有一个值可以在同一个x轴上同时显示。

让我们说我有这三个数组,用numpy和零创建:

x1 = [1,2,4,5,6,7,9,10]
x2 = [8,7,6,5,4,3,2,1]
x3 = [16,14,12,10,8,6,4,2]

我想要的就是让他们在动画中沿同一轴移动。我还没有任何正确的代码,因为到目前为止我没有任何工作。这里的一个不足只是我尝试过的那个。

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation

def update_line(num, data, line):
    line.set_data(data[...,:num])
    return line,

fig1 = plt.figure()

data = np.random.rand(2, 25)
l, = plt.plot([], [], 'r-')
plt.xlim(0, 1)
plt.ylim(0, 1)
plt.xlabel('x')
plt.title('test')
line_ani = animation.FuncAnimation(fig1, update_line, 25, fargs=(data, l),
    interval=50, blit=True)
#line_ani.save('lines.mp4')

fig2 = plt.figure()

x = np.arange(-9, 10)
y = np.arange(-9, 10).reshape(-1, 1)
base = np.hypot(x, y)
ims = []
for add in np.arange(15):
    ims.append((plt.pcolor(x, y, base + add, norm=plt.Normalize(0, 30)),))

im_ani = animation.ArtistAnimation(fig2, ims, interval=50, repeat_delay=3000,
    blit=True)
#im_ani.save('im.mp4', metadata={'artist':'Guido'})

plt.show()

此代码仅为我显示两个空图。它比我想要的复杂得多,只是我发现的东西。

0 个答案:

没有答案