我为动画编写了一个简单的python代码。代码创建随机点,然后在动画期间绘制它们。
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
x = 10*np.random.rand(10,1)
y = 10*np.random.rand(10,1)
fig = plt.figure()
ax = plt.axes(aspect='equal',xlim =(-10,10), ylim = (-10,10))
plts = ax.plot([], [], 'o-')
def init():
plts.set_data([],[])
return plts
def animate(num,x,y,plots,skip):
plts[0].set_data(x[:num*skip],y[:num*skip])
return plts
skip = 1
ani = animation.FuncAnimation(fig,
animate,
frames=10,
fargs =(x,y,plts,skip),
interval=1000)
plt.show()
答案 0 :(得分:1)
当您绘制列表中的所有点时,最多为索引num*skip
。每帧num
增加1,因此绘制了一个额外的点。
为了仅绘制num
点,只需使用
plts[0].set_data(x[num],y[num])