python中plot实现即时数据动态显示方法


Posted in Python onJune 22, 2018

在Matlab使用Plot函数实现数据动态显示方法总结中介绍了两种实现即时数据动态显示的方法。考虑到使用python的人群日益增多,再加上本人最近想使用python动态显示即时的数据,网上方法很少,固总结于此。

示例代码1

import matplotlib.pyplot as plt
import numpy as np
import time
from math import *

plt.ion() #开启interactive mode 成功的关键函数
plt.figure(1)
t = [0]
t_now = 0
m = [sin(t_now)]

for i in range(2000):
 t_now = i*0.1
 t.append(t_now)#模拟数据增量流入
 m.append(sin(t_now))#模拟数据增量流入
 plt.plot(t,m,'-r')
 plt.draw()#注意此函数需要调用
 time.sleep(0.01)

python中plot实现即时数据动态显示方法

示例代码2

上面的方式,可以在跳出的画图面板内动态显示,但是如果想在jupyter notebook中直接动态显示,上面的方法将无效。因此,补上在jupyter notebook中可行的动态显示示例程序。以供举一反三之用。
这里写代码片

import math
import random
import numpy as np
import matplotlib
import matplotlib.pyplot as plt
%matplotlib inline

# set up matplotlib
is_ipython = 'inline' in matplotlib.get_backend()
if is_ipython:
 from IPython import display

plt.ion()

def plot_durations(y):
 plt.figure(2)
 plt.clf()
 plt.subplot(211)
 plt.plot(y[:,0])
 plt.subplot(212)
 plt.plot(y[:,1])

 plt.pause(0.001) # pause a bit so that plots are updated
 if is_ipython:
  display.clear_output(wait=True)
  display.display(plt.gcf())


x = np.linspace(-10,10,500)
y = []
for i in range(len(x)):
 y1 = np.cos(i/(3*3.14))
 y2 = np.sin(i/(3*3.14))
 y.append(np.array([y1,y2]))
 plot_durations(np.array(y))

python中plot实现即时数据动态显示方法

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
有关wxpython pyqt内存占用问题分析
Jun 09 Python
python中os操作文件及文件路径实例汇总
Jan 15 Python
Python使用reportlab将目录下所有的文本文件打印成pdf的方法
May 20 Python
Python实现一个简单的验证码程序
Nov 03 Python
Python统计单词出现的次数
Apr 04 Python
Python查找数组中数值和下标相等的元素示例【二分查找】
Feb 13 Python
django配置连接数据库及原生sql语句的使用方法
Mar 03 Python
python使用if语句实现一个猜拳游戏详解
Aug 27 Python
浅谈keras使用中val_acc和acc值不同步的思考
Jun 18 Python
基于python获取本地时间并转换时间戳和日期格式
Oct 27 Python
Python爬取豆瓣数据实现过程解析
Oct 27 Python
Django一小时写出账号密码管理系统
Apr 29 Python
Python+selenium 获取一组元素属性值的实例
Jun 22 #Python
python selenium 获取标签的属性值、内容、状态方法
Jun 22 #Python
python+selenium打印当前页面的titl和url方法
Jun 22 #Python
Python基于多线程实现抓取数据存入数据库的方法
Jun 22 #Python
python实现比较文件内容异同
Jun 22 #Python
python实现输入数字的连续加减方法
Jun 22 #Python
Python之用户输入的实例
Jun 22 #Python
You might like
PHP+Ajax实时自动检测是否联网的方法
2015/07/01 PHP
客户端 使用XML DOM加载json数据的方法
2010/09/28 Javascript
使用jQuery实现的掷色子游戏动画效果
2014/03/14 Javascript
Jquery对select的增、删、改、查操作
2015/02/06 Javascript
JavaScript中的slice()方法使用详解
2015/06/06 Javascript
javascript中数组方法汇总
2015/07/07 Javascript
jquery获取css的color值返回RGB的方法
2015/12/18 Javascript
javascript淘宝主图放大镜功能
2016/10/20 Javascript
自己封装的一个简单的倒计时功能实例
2016/11/23 Javascript
JS敏感词过滤代码
2016/12/23 Javascript
用node和express连接mysql实现登录注册的实现代码
2017/07/05 Javascript
js学使用setTimeout实现轮循动画
2017/07/17 Javascript
node.js利用socket.io实现多人在线匹配联机五子棋
2018/05/31 Javascript
微信小程序实现收藏与取消收藏切换图片功能
2018/08/03 Javascript
原生JS实现手动轮播图效果实例代码
2018/11/22 Javascript
vue element table中自定义一些input的验证操作
2020/07/18 Javascript
NodeJS开发人员常见五个错误理解
2020/10/14 NodeJs
Vue包大小优化的实现(从1.72M到94K)
2021/02/18 Vue.js
python服务器端收发请求的实现代码
2014/09/29 Python
Python之PyUnit单元测试实例
2014/10/11 Python
Python中非常实用的一些功能和函数分享
2015/02/14 Python
Python+Socket实现基于TCP协议的客户与服务端中文自动回复聊天功能示例
2017/08/31 Python
python3大文件解压和基本操作
2017/12/15 Python
python 定时修改数据库的示例代码
2018/04/08 Python
python+selenium实现自动抢票功能实例代码
2018/11/23 Python
python3射线法判断点是否在多边形内
2019/06/28 Python
numpy中三维数组中加入元素后的位置详解
2019/11/28 Python
安装python3.7编译器后如何正确安装opnecv的方法详解
2020/06/16 Python
Python环境配置实现pip加速过程解析
2020/11/27 Python
html5 canvas-2.用canvas制作一个猜字母的小游戏
2013/01/07 HTML / CSS
授权委托书样本
2014/04/03 职场文书
研发工程师岗位职责
2014/04/28 职场文书
机械专业应届毕业生自荐书
2014/06/12 职场文书
会议欢迎词
2015/01/23 职场文书
Python词云的正确实现方法实例
2021/05/08 Python
Mysql 如何实现多张无关联表查询数据并分页
2021/06/05 MySQL