Matplotlib之animation动画
程序员文章站
2022-02-16 19:23:26
...
用animation画一个y=sin(x)的动画函数。
代码如下:
from numpy import *
import matplotlib.pyplot as plt
from matplotlib import animation
fig,ax=plt.subplots() #相当于fig=plt.figure(),ax=plt.subplot();ax=plt.subplot也可以是ax=fig.add_subplot()
x=arange(0,2*pi,0.01)
line,=ax.plot(x,sin(x))
def update(i):
line.set_ydata(sin(x+i/10))
return line,
def init():
line.set_ydata(sin(x))
return line,
ani=animation.FuncAnimation(fig=fig,func=update,frames=100,init_func=init,interval=20,blit=False)
plt.show()
注:
- fig,ax=plt.subplots() #相当于fig=plt.figure(),ax=plt.subplot();ax=plt.subplot也可以是ax=fig.add_subplot():
fig=plt.figure()表示为当前这个画布命名为fig
ax=plt.subplot()或ax=fig.add_subplot()表示将当前画布进行分割,默认分割成1行1列,ax在第一个画布。
- FuncAnimation函数:ani=animation.FuncAnimation(fig=fig,func=update,frames=100,init_func=init,interval=20,blit=False):
1.fig:绘制动画的画布
2.func:动画函数
3.frams:动画长度,一次循环包含的帧数,在函数运行时,其值会传给动画函数update(i)的形参i
4.init_func:动画的起始状态
5.interval:更新频率,interval=20表示每隔20ms从头来一次
6.blit:是否更新整张图,False表示更新整张图,True表示只更新有变化的点。mac用户请使blit=False。
上一篇: Matplotlib绘制动画
下一篇: matplotlib 绘制动画
推荐阅读
-
Android动画之3D翻转效果实现函数分析
-
Android开发之图形图像与动画(三)Animation效果的XML实现
-
Android开发之图形图像与动画(四)AnimationListener简介
-
Android开发之图形图像与动画(二)Animation实现图像的渐变/缩放/位移/旋转
-
Android开发之图形图像与动画(一)Paint和Canvas类学习
-
Android开发之图形图像与动画(五)LayoutAnimationController详解
-
Android开发之背景动画简单实现方法
-
Flash动画制作基础之元件的制作方法
-
css3的动画特效之动画序列(animation)
-
python游戏开发之视频转彩色字符动画