使用matplotlib动态刷新指定曲线实例


Posted in Python onApril 23, 2020

我就废话不多说啦,还是直接看代码吧!

from matplotlib import pyplot as plt
import numpy as np
 
x = np.linspace(1, 100, 20)
y = x *2 +3
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.scatter(x, y)
plt.ion()
for i in range(10):
 y = x*i*0.1 + i
 try:
  ax.lines.remove(lines[0])
 except Exception:
  pass
 lines = ax.plot(x ,y)
 plt.pause(0.1)

补充知识:用Python的matplotlib库动态显示不断增长的数据

"""
Created on Mon Dec 07 16:34:10 2015

@author: SuperWang
"""

import matplotlib.pyplot as plt
import numpy as np

fig,ax=plt.subplots()
fig2,ax2=plt.subplots()


y1=[]
y2=[]

for i in range(50):
 y1.append(np.sin(i))
 y2.append(np.cos(i))
 ax.cla()
 ax.set_title("Loss")
 ax.set_xlabel("Iteration")
 ax.set_ylabel("Loss")
 ax.set_xlim(0,55)
 ax.set_ylim(-1,1)
 ax.grid()
 ax.plot(y1,label='train')
 ax.plot(y2,label='test')
 ax.legend(loc='best')

 ax2.cla()
 ax2.set_title("Loss")
 ax2.set_xlabel("Iteration")
 ax2.set_ylabel("Loss")
 ax2.set_xlim(0,55)
 ax2.set_ylim(-1,1)
 ax2.grid()
 ax2.plot(y1,label='train')
 ax2.plot(y2,label='test')
 ax2.legend(loc='best')
 plt.pause(1)

要解决的问题如标题所示,原理很简单,就是当数据增长时,不断清空以前的绘画内容,然后把现有的数据重新画出来(数据是胡乱生成的)。

具体过程如下:

fig,ax=plt.subplots() 产生一个figure对象和一个axis对象。figure相当于一个窗口,而axis相当于一个画布。此句也可以用两句生成,即fig=plt.figure(num),括号中的参数是figure的ID,如果只需创建一个figure对象,那么可以省略。然后ax=fig.subplot(1,1,1),subplot()的具体用法可以去google或百度一下。ax.cla()就是在新数据到来时,先把之前的绘制的内容清空,接下来,ax.set_title(“Loss”),ax.set_xlabel(“Iteration”),ax.set_ylabel(“Loss”)都很简单,见名知意。ax.set_xlim(0,55),ax.set_ylim(-1,1)分别用来设置x轴和y轴的两个端点。ax.grid()给画布加上网格。ax.plot(y1,label='train'),ax.plot(y2,label='test')这两句是实际的绘制命令,其中,参数label是为以后生成图例用的。ax2.legend(loc='best')用来生成图例,loc参数代表图例位置location,而value:‘best'是其中的一种选择,除此之外,还有左上角等其他选项。最后,plt.pause(1)是为了显示上更直观,故意每绘制一次,暂停1秒,注意,这里的单位是秒。如果是实际的应用,而数据生成的过程又比较慢,此句完全可以省略。

这段代码中创建了两个窗口,在实验过程中,我发现只能有一个窗口被选中,即用鼠标点击哪个窗口,哪个窗口会动态地显示绘画过程,而另一个保持不动。

绘画过程截图如下:

使用matplotlib动态刷新指定曲线实例

以上这篇使用matplotlib动态刷新指定曲线实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python写入xml文件的方法
May 08 Python
Apache如何部署django项目
May 21 Python
使用Python实现简单的服务器功能
Aug 25 Python
基于Django用户认证系统详解
Feb 21 Python
python实现多人聊天室
Mar 31 Python
Flask实现跨域请求的处理方法
Sep 27 Python
Python如何发布程序的详细教程
Oct 09 Python
Python 词典(Dict) 加载与保存示例
Dec 06 Python
keras模型保存为tensorflow的二进制模型方式
May 25 Python
python中wheel的用法整理
Jun 15 Python
Python发送邮件实现基础解析
Aug 14 Python
Django ModelForm组件原理及用法详解
Oct 12 Python
Flask模板引擎Jinja2使用实例
Apr 23 #Python
利用pandas向一个csv文件追加写入数据的实现示例
Apr 23 #Python
在matplotlib中改变figure的布局和大小实例
Apr 23 #Python
Python将二维列表list的数据输出(TXT,Excel)
Apr 23 #Python
Python基于DB-API操作MySQL数据库过程解析
Apr 23 #Python
详解pandas绘制矩阵散点图(scatter_matrix)的方法
Apr 23 #Python
Python matplotlib实时画图案例
Apr 23 #Python
You might like
php 随机排序广告的实现代码
2011/05/09 PHP
Yii Framework框架获取分类下面的所有子类方法
2014/06/20 PHP
PHP HTTP 认证实例详解
2016/11/03 PHP
使用IE6看老赵的博客 jQuery初探
2010/01/17 Javascript
JavaScript Event学习第三章 早期的事件处理程序
2010/02/07 Javascript
Zero Clipboard js+swf实现的复制功能使用方法
2010/03/07 Javascript
图片放大镜jquery.jqzoom.js使用实例附放大镜图标
2014/06/19 Javascript
使用js复制链接中的部分文字的方法
2015/07/30 Javascript
Ext JS框架程序中阻止键盘触发回退或者刷新页面的代码分享
2016/06/07 Javascript
JS 循环li添加点击事件 (闭包的应用)
2016/12/10 Javascript
详谈JavaScript的闭包及应用
2017/01/17 Javascript
React Native 搭建开发环境的方法步骤
2017/10/30 Javascript
angularJs提交文本框数据到后台的方法
2018/10/08 Javascript
Vuex持久化插件(vuex-persistedstate)解决刷新数据消失的问题
2019/04/16 Javascript
Vue基础学习之项目整合及优化
2019/06/02 Javascript
详解mpvue开发微信小程序基础知识
2019/09/23 Javascript
[05:05]第三天的dota2
2013/07/29 DOTA
[03:49]2016完美“圣”典风云人物:AMS专访
2016/12/06 DOTA
使用Python从有道词典网页获取单词翻译
2016/07/03 Python
python中requests使用代理proxies方法介绍
2017/10/25 Python
Pycharm保存不能自动同步到远程服务器的解决方法
2019/06/27 Python
pyMySQL SQL语句传参问题,单个参数或多个参数说明
2020/06/06 Python
自定义Django_rest_framework_jwt登陆错误返回的解决
2020/10/18 Python
CSS3 RGBA色彩模式使用实例讲解
2016/04/26 HTML / CSS
压铸汽车模型收藏家:Diecastmodelswholesale.com
2016/12/21 全球购物
耐克波兰官方网站:Nike波兰
2019/09/03 全球购物
Dr. Martens马汀博士法国官网:马丁靴鼻祖
2020/01/15 全球购物
写一个用矩形法求定积分的通用函数
2012/11/08 面试题
医药大学生求职简历的自我评价
2013/10/17 职场文书
水电工岗位职责
2014/02/12 职场文书
总裁助理岗位职责
2014/02/17 职场文书
工程采购员岗位职责
2014/03/09 职场文书
十佳护士先进事迹
2014/05/08 职场文书
单位委托书怎么写
2014/09/21 职场文书
导游词之大雁塔景区
2019/09/17 职场文书
导游词之广西漓江
2019/11/02 职场文书