更新时间:2022年05月10日11时07分 来源:传智教育 浏览次数:
ArtistAnimation是基于一组Artist对象的动画类,它通过一帧一帧的数据制作动画。ArtistAnimation类的构造方法的语法格式如下所示:
ArtistAnimation(fig, artists, interval, repeat_delay, repeat, blit, *args, **kwargs)
该方法常用参数的含义如下。
.fig:表示动画所在的画布。
.artists:表示一组Artist对象的列表。
.interval:表示更新动画的频率,以毫秒为单位,默认为200.
.repeat_delay:表示再次播放动画之前延迟的时长。
.repeat:表示是否重复播放动画。
下面使用ArtistAnimation类制作与上个示例相同的动画效果——移动的正弦曲线,具体代码如下。
import numpy as np import matplotlib.pyplot as plt from matplotlib.animation import ArtistAnimation x = np.arange(0, 2*np.pi, 0.01) fig, ax = plt.subplots() arr = [] for i in range(5): line = ax.plot(x, np.sin(x+i)) arr.append(line) # 根据arr存储的一组图形创建动画 ani = ArtistAnimation(fig=fig, artists=arr, repeat=True) plt.show()
运行以上程序,效果如图7-5所示。
图7-5 使用AristAnimation类制作移动的正弦曲线
需要说明的是,因为每次绘制的曲线都是一个新的图形,所以每次曲线的颜色都是不同的。
通过比较可以发现,通过FuncAnimation类创建动画的方式更加灵活。