matplotlib绘制动图,Python动画代码

  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的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: