matplotlib绘制动图,Python动画代码
使用matplotlib可以很容易地创建动画帧。在本文中,我们将使用Matplotlib制作几个简单的动画。本文中的示例代码比较详细,有兴趣的可以了解一下。
目录
matplotlib动画出生率男女人口总数雨滴
matplotlib 动画
我们想做一个动画,在屏幕上一步一步画出正弦和余弦函数。首先我们需要告诉matplotlib我们想要制作一个动画,然后我们必须指定我们想要在每一帧中绘制什么。一个常见的错误是重绘每一帧中的所有内容,这会使整个过程非常缓慢。相反,我们只能更新必要的内容,因为我们知道很多内容不会随着框架的变化而变化。对于折线图,我们将使用set_data方法更新绘图,剩下的工作由matplotlib完成。
请注意随动画移动的结束标记。原因是我们在最后指定了一个标记(markevery=[-1]),这样每次设置新数据时,标记都会自动更新,并随着动画移动。见下图。
importnumpyasnp
importmatplotlib.pyplotasplt
importmatplotlib.animationasanimation动画
fig=plt.figure(figsize=(7,2))
ax=plt.subplot()
X=np.linspace(-np.pi,np.pi,256,endpoint=True)
c,S=np.cos(X),np.sin(X)
(line1,)=ax.plot(X,C,marker=o ,markevery=[-1],
markeredgecolor=white )
(line2,)=ax.plot(X,S,marker=o ,markevery=[-1],
markeredgecolor=white )
取消更新(框架):
line 1 . set _ data(X[:帧],C[:帧])
line 2 . set _ data(X[:帧],S[:帧])
plt.tight_layout()
ani=动画。FuncAnimation(图,更新,间隔=10)
如果我们现在想保存这个动画,matplotlib可以创建一个mp4文件,但是选项很少。更好的解决方案是使用外部库,比如FFMpeg,它可以在大多数系统上使用。安装完成后,我们可以使用专用的FFMpegWriter,如下图3360所示。
编剧=动画。FFMpegWriter(fps=30)
anim=动画。FuncAnimation(图,更新,
间隔=10,
frames=len(X))
anim.save(正弦余弦. mp4 ,writer=writer,dpi=100)
注意,当我们保存mp4动画时,动画不会立即开始,因为实际上有一个对应于电影创作的延迟。对于正弦和余弦,延迟相当短,可以忽略不计。但是对于长而复杂的动画,这种延迟会变得非常重要,所以有必要跟踪它的进度。所以我们用tqdm库来补充一些信息。
fromtqdm . autonotebookpimportqdm
bar=tqdm(total=len(X))
anim.save(./data/sine-cosine.mp4 ,
作家=作家,dpi=300,
progress_callback=lambdai,n:bar.update(1))
bar.close()
[错误2]没有这样的文件或目录: ffmpeg
如果你在macOS上,只需通过homebrew: brew install ffm安装即可
peg
人口出生率
x = data[指标].values
男女人口总数
# 设置画布
雨滴
# 设置雨滴绘图更新函数
以上就是Python Matplotlib绘制动画的代码详解的详细内容,更多关于Python Matplotlib动画的资料请关注盛行IT软件开发工作室其它相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。