没有合适的资源?快使用搜索试试~ 我知道了~
首页python matplotlib绘制动态曲线 数据流可视化
很多时候需要在程序运行过程中,查看一些数据的动态变化,最容易想到的是像opencv那样直接循环使用imshow()形成动态画面,但是由于matplotlib中的显示模式是阻塞模式,在plt.show()之后程序就会暂停在那,打开一个窗口以后必须关掉才能继续执行,这样用matplotlib画动态图就像播放ppt,关闭一个窗口后弹出下一个。关于matplotlib包的任何信息都可以直接在它官网查询。本文总结了几种方法实现在程序运行中绘制动态图的方法,以画动态正弦曲线为例。 第一种方法:plt.show()放在程序最后 既然plt.show会阻塞后面的程序,那么就把plt.show放在程序最后。另外
资源详情
资源评论
资源推荐

python matplotlib绘制动态曲线绘制动态曲线 数据流可视化数据流可视化
很多时候需要在程序运行过程中,查看一些数据的动态变化,最容易想到的是像opencv那样直接循环使用imshow()形成动态
画面,但是由于matplotlib中的显示模式是阻塞模式,在plt.show()之后程序就会暂停在那,打开一个窗口以后必须关掉才能继
续执行,这样用matplotlib画动态图就像播放ppt,关闭一个窗口后弹出下一个。关于matplotlib包的任何信息都可以直接在它官
网查询。本文总结了几种方法实现在程序运行中绘制动态图的方法,以画动态正弦曲线为例。
第一种方法:第一种方法:plt.show()放在程序最后放在程序最后
既然plt.show会阻塞后面的程序,那么就把plt.show放在程序最后。另外要在每次plot以前清除上次显示结果,并让画图窗口暂
停一段时间来显示。
import matplotlib.pyplot as plt
import numpy as np
POINTS = 100
sin_list = [0] * POINTS
indx = 0
# fig, ax = plt.subplots()
while True:
if indx == 40:
indx = 0
indx += 1
# 更新绘图数据
sin_list = sin_list[1:] + [np.sin((indx / 20) * np.pi)] # 显示时间
plt.pause(0.01)
# 清除上一次显示
plt.cla()
plt.plot(sin_list)
#plt.show()如果放在这个位置就会卡住
plt.show() #放在最后不会影响之后的代码执行
第二种方法:用第二种方法:用plt.draw()代替代替plt.show()
还可以用plt.draw()代替plt.show(),plt.draw放置的位置就比较多了,也要在程序中清除上次显示结果,并让画图窗口暂停一段
时间来显示,画正弦函数动态图例子如下:
import matplotlib.pyplot as plt
import numpy as np
POINTS = 100
sin_list = [0] * POINTS
indx = 0
# fig, ax = plt.subplots()
while True:
if indx == 40:
indx = 0
indx += 1
# 更新绘图数据
sin_list = sin_list[1:] + [np.sin((indx / 20) * np.pi)] # 显示时间
plt.pause(0.01)
# 清除上一次显示
plt.cla()
plt.plot(sin_list)
# plt.draw()也可以放在这个位置,不会阻塞
plt.draw()
第三种方法:用第三种方法:用plt.on()
另一种方法是在程序前面用plt.on()开启交互模式,交互模式下plot之后直接显示出来,不再需要用plt.show(),并且显示时画
图闪现就继续执行下去,因此也要让窗口暂停一段时间。同样是画正弦函数动态图例子如下:
import matplotlib.pyplot as plt
import numpy as np
POINTS = 100
sin_list = [0] * POINTS
indx = 0
# 开启交互模式
plt.ion()



















weixin_38673694
- 粉丝: 4
- 资源: 950
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助

会员权益专享
最新资源
- Xilinx SRIO详解.pptx
- Informatica PowerCenter 10.2 for Centos7.6安装配置说明.pdf
- 现代无线系统射频电路实用设计卷II 英文版.pdf
- 电子产品可靠性设计 自己讲课用的PPT,包括设计方案的可靠性选择,元器件的选择与使用,降额设计,热设计,余度设计,参数优化设计 和 失效分析等
- MPC5744P-DEV-KIT-REVE-QSG.pdf
- 通信原理课程设计报告(ASK FSK PSK Matlab仿真--数字调制技术的仿真实现及性能研究)
- ORIGIN7.0使用说明
- 在VMware Player 3.1.3下安装Redhat Linux详尽步骤
- python学生信息管理系统实现代码
- 西门子MES手册 13 OpcenterEXCR_PortalStudio1_81RB1.pdf
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制

评论0