位置: IT常识 - 正文

用Python绘制几个动画(如何用python绘制)

编辑:rootadmin

推荐整理分享用Python绘制几个动画(如何用python绘制),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:用python画一个简单的图形,用python画一个简单的图形,python如何画出多个独立的图,python如何画出多个独立的图,python绘制几个对称的点,python绘制几个对称的点,python如何绘制多个图,python如何绘制多个图,内容如对您有帮助,希望把文章链接给更多的朋友!

Python中的matplotlib从1.1.0版本以后就开始支持绘制动画,Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。这里介绍几种Python使用matplotlib绘制动画的方法。

用Python绘制几个动画(如何用python绘制)

下面是几个的示例:

第一个例子使用generator,每隔两秒,就运行函数data_gen:

#-*-coding:utf-8-*-importnumpyasnpimportmatplotlib.pyplotaspltimportmatplotlib.animationasanimationfig=plt.figure()axes1=fig.add_subplot(111)line,=axes1.plot(np.random.rand(10))#因为update的参数是调用函数data_gen,#所以第一个默认参数不能是framenumdefupdate(data):line.set_ydata(data)returnline,#每次生成10个随机数据defdata_gen():whileTrue:yieldnp.random.rand(10)ani=animation.FuncAnimation(fig,update,data_gen,interval=2*1000)plt.show()

第二个例子使用list(metric),每次从metric中取一行数据作为参数送入update中:

importnumpyasnpimportmatplotlib.pyplotaspltimportmatplotlib.animationasanimationstart=[1,0.18,0.63,0.29,0.03,0.24,0.86,0.07,0.58,0]metric=[[0.03,0.86,0.65,0.34,0.34,0.02,0.22,0.74,0.66,0.65],[0.43,0.18,0.63,0.29,0.03,0.24,0.86,0.07,0.58,0.55],[0.66,0.75,0.01,0.94,0.72,0.77,0.20,0.66,0.81,0.52]]fig=plt.figure()window=fig.add_subplot(111)line,=window.plot(start)#如果是参数是list,则默认每次取list中的一个元素,#即metric[0],metric[1],...defupdate(data):line.set_ydata(data)returnline,ani=animation.FuncAnimation(fig,update,metric,interval=2*1000)plt.show()

第三个例子:

importnumpyasnpfrommatplotlibimportpyplotaspltfrommatplotlibimportanimation#Firstsetupthefigure,theaxis,andtheplotelementwewanttoanimatefig=plt.figure()ax=plt.axes(xlim=(0,2),ylim=(-2,2))line,=ax.plot([],[],lw=2)#initializationfunction:plotthebackgroundofeachframedefinit():line.set_data([],[])returnline,#animationfunction.Thisiscalledsequentially#note:iisframenumberdefanimate(i):x=np.linspace(0,2,1000)y=np.sin(2*np.pi*(x-0.01*i))line.set_data(x,y)returnline,#calltheanimator.blit=Truemeansonlyre-drawthepartsthathavechanged.anim=animation.FuncAnimation(fig,animate,init_func=init,frames=200,interval=20,blit=True)#anim.save('basic_animation.mp4',fps=30,extra_args=['-vcodec','libx264'])plt.show()

第四个例子:

#-*-coding:utf-8-*-importnumpyasnpimportmatplotlib.pyplotaspltimportmatplotlib.animationasanimation#每次产生一个新的坐标点defdata_gen():t=data_gen.tcnt=0whilecnt<1000:cnt+=1t+=0.05yieldt,np.sin(2*np.pi*t)*np.exp(-t/10.)data_gen.t=0#绘图fig,ax=plt.subplots()line,=ax.plot([],[],lw=2)ax.set_ylim(-1.1,1.1)ax.set_xlim(0,5)ax.grid()xdata,ydata=[],[]#因为run的参数是调用函数data_gen,#所以第一个参数可以不是framenum:设置line的数据,返回linedefrun(data):#updatethedatat,y=dataxdata.append(t)ydata.append(y)xmin,xmax=ax.get_xlim()ift>=xmax:ax.set_xlim(xmin,2*xmax)ax.figure.canvas.draw()line.set_data(xdata,ydata)returnline,#每隔10秒调用函数run,run的参数为函数data_gen,#表示图形只更新需要绘制的元素ani=animation.FuncAnimation(fig,run,data_gen,blit=True,interval=10,repeat=False)plt.show()#-*-coding:utf-8-*-importnumpyasnpimportmatplotlib.pyplotaspltimportmatplotlib.animationasanimation#第一个参数必须为framenumdefupdate_line(num,data,line):line.set_data(data[...,:num])returnline,fig1=plt.figure()data=np.random.rand(2,15)l,=plt.plot([],[],'r-')plt.xlim(0,1)plt.ylim(0,1)plt.xlabel('x')plt.title('test')#framenum从1增加大25后,返回再次从1增加到25,再返回...line_ani=animation.FuncAnimation(fig1,update_line,25,fargs=(data,l),interval=50,blit=True)#等同于#line_ani=animation.FuncAnimation(fig1,update_line,frames=25,fargs=(data,l),#interval=50,blit=True)#忽略frames参数,framenum会从1一直增加下去知道无穷#由于frame达到25以后,数据不再改变,所以你会发现到达25以后图形不再变化了#line_ani=animation.FuncAnimation(fig1,update_line,fargs=(data,l),#interval=50,blit=True)plt.show()
本文链接地址:https://www.jiuchutong.com/zhishi/309298.html 转载请保留说明!

上一篇:帝国cms怎么安装?(帝国cms安装教程)

下一篇:唐山发生5.1级地震 地震相关英文表达(唐山发生5.1级地震)

  • 小米手机屏蔽的相册怎么找回(小米手机屏蔽的相册怎么打开)

    小米手机屏蔽的相册怎么找回(小米手机屏蔽的相册怎么打开)

  • 三大运营商指的是什么(三大运营商指的是什么数字啊)

    三大运营商指的是什么(三大运营商指的是什么数字啊)

  • 电脑桌面上的文件怎么保存到d盘(电脑桌面上的文件夹不见了怎么办)

    电脑桌面上的文件怎么保存到d盘(电脑桌面上的文件夹不见了怎么办)

  • 3700x配什么显卡(3700x搭配)

    3700x配什么显卡(3700x搭配)

  • 为什么设置不了面容id(为什么设置不了页码)

    为什么设置不了面容id(为什么设置不了页码)

  • ipadmini5什么时候上市的(ipadmini5什么时候发布)

    ipadmini5什么时候上市的(ipadmini5什么时候发布)

  • 抖音未成年怎么开直播(抖音未成年怎么充值)

    抖音未成年怎么开直播(抖音未成年怎么充值)

  • 新手机发热是质量问题吗(新手机发热是质保吗)

    新手机发热是质量问题吗(新手机发热是质保吗)

  • 电瓶车充电一闪一闪是什么意思(电瓶车充电一闪一闪绿灯)

    电瓶车充电一闪一闪是什么意思(电瓶车充电一闪一闪绿灯)

  • oppo手机充电不显示闪充标志(oppo手机充电不显示超级快充了)

    oppo手机充电不显示闪充标志(oppo手机充电不显示超级快充了)

  • 苹果电脑放不出声音怎么回事(为什么苹果电脑不能放歌)

    苹果电脑放不出声音怎么回事(为什么苹果电脑不能放歌)

  • 微信发语音很慢是什么原因(微信发语音慢是什么原因)

    微信发语音很慢是什么原因(微信发语音慢是什么原因)

  • 苹果手机下面的横条怎么弄的(苹果手机下面的横条怎么取消)

    苹果手机下面的横条怎么弄的(苹果手机下面的横条怎么取消)

  • 红米6a能装内存卡吗(红米6a可不可以装内存卡)

    红米6a能装内存卡吗(红米6a可不可以装内存卡)

  • qq举报别人会知道是谁吗(我qq举报别人对方会知道是我吗)

    qq举报别人会知道是谁吗(我qq举报别人对方会知道是我吗)

  • iphone7p支持快充吗(iphone7p可以用快充充电器吗)

    iphone7p支持快充吗(iphone7p可以用快充充电器吗)

  • 苹果手机怎么开机使用(苹果手机怎么开美颜功能)

    苹果手机怎么开机使用(苹果手机怎么开美颜功能)

  • 华为手电筒怎么放桌面(华为手电筒怎么设置在桌面上)

    华为手电筒怎么放桌面(华为手电筒怎么设置在桌面上)

  • 抖音作品怎么删除(抖音作品怎么删除方法)

    抖音作品怎么删除(抖音作品怎么删除方法)

  • 大锤智享是什么公司(大锤智享是什么品牌)

    大锤智享是什么公司(大锤智享是什么品牌)

  • 华为故事锁屏怎么卸载(华为故事锁屏怎么关)

    华为故事锁屏怎么卸载(华为故事锁屏怎么关)

  • 微信二维码收款能联系到顾客吗(微信二维码收款限额是多少)

    微信二维码收款能联系到顾客吗(微信二维码收款限额是多少)

  • ar3bt和ar5bt差别(ar3is和ar3bt)

    ar3bt和ar5bt差别(ar3is和ar3bt)

  • 系统总线中控制线的功能是(系统总线控制板的作用)

    系统总线中控制线的功能是(系统总线控制板的作用)

  • nova5上市时间(华为nova5上市时间)

    nova5上市时间(华为nova5上市时间)

  • PyTorch 之 基于经典网络架构训练图像分类模型(pytorch csdn)

    PyTorch 之 基于经典网络架构训练图像分类模型(pytorch csdn)

  • 税收管辖权是什么的重要组成部分
  • 如何写财务制度
  • 处置使用过的车辆
  • 报税盘金税盘领的发票能通用吗
  • 贴现的日期怎么算
  • 房产税存在往期滞纳金吗
  • 铁路大票抵扣几个点
  • 销售支付产品是什么意思
  • 研发费用的社保怎么做
  • 商场促销的税务处理怎么做?
  • 向投资者借款做在什么科目
  • 公司内部核算调拨价差的账务怎么做处理?
  • 计提所得税是在结转12月损益之前还是之后
  • 一般纳税人开技术服务发票
  • 文化用品利润怎么样
  • 个人安装设备属于劳务吗
  • 已抵扣发票红冲后发票还给对方公司
  • 关于非上市公司的法律
  • 1697508645
  • 用一般户发工资会怎么样
  • 虚拟机中如何将文件移动到普通用户的家目录下
  • saproxy.exe - saproxy是什么进程 有什么用
  • 公司收到银行转账会计分录
  • 每股收益增长率计算公式
  • 企业所得税清算报备是什么意思
  • mac教程视频
  • tracert命令的作用及用法
  • edge弹窗
  • 开发成本怎么核算
  • 金融保险业的营业税率为
  • 增值税发票与实际差异五毛钱
  • DOMException: Failed to execute ‘insertBefore‘ on ‘Node‘: The node before which the new node ...报错
  • 所得税季报本月数是指
  • php数据库设计
  • 单位收到投标保证金会计分录
  • 自由会计师
  • Postgresql ALTER语句常用操作小结
  • MySQL慢查询优化面试问题
  • 以下船舶可在公海上行驶登陆权
  • 税控盘维护费280元怎么做账
  • 餐饮行业加盟模式
  • 商业承兑汇票怎么贴现
  • 计提未到期责任准备金的意义
  • 纳税调整收入包括哪些
  • 退回现金会计分录
  • 上一年度企业所得税汇算清缴会计分录
  • 赞助费入账需要多久
  • 母公司以房产投资子公司
  • 银行受理汇票贴现业务
  • 无形资产投资入股是否缴纳企业所得税
  • 材料采购成本包括买价和采购费用
  • 房地产企业收入确认条件税法
  • 备份还原工具怎么用
  • sql必会知识
  • sql时间格式化大全
  • 英文版的windows
  • win10显示请勿关闭电脑
  • 关闭win10操作系统,相当于
  • kdeskcore.exe是什么
  • windows8怎么设置
  • linux中awk怎么用
  • win7怎么看最近访问位置
  • win8 metro启动界面
  • windows8应用商店在哪
  • 笔记本自带的win8
  • cocos2dx怎么用啊
  • javascript的三种主要数据类型
  • [置顶]从lv2开始开挂的原勇者候悠闲的异世界生活
  • 在动画制作中一般默认帧数选择为
  • glGenTextures(GLsizei n, GLuint *textures)函数说明
  • bat批处理命令大全
  • mailto的使用技巧分享
  • shell中的注释用什么表示
  • fragment里面如何嵌套fragment
  • c# hashtable 用法
  • jquery获取文件大小
  • python append、extend与insert的区别
  • javascript src
  • 四川增值税发票图片
  • 昌隆鑫实业集团招聘
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设