Matlab使用Plot函数实现数据动态显示方法总结


Posted in Python onFebruary 25, 2021

引子

对于真实系统或者仿真平台,数据是增量式的产生的。Matlab除了强大的矩阵运算外,还具有强大的数据可视化库。由于静态画图的方法较多,本文只针对增量式数据流的动态显示。

本文主要介绍几种Matlab实现数据的动态显示方法。方法主要有两种:

hold on 方法

1. 方法介绍

此种方法比较原始,适合于即时数据,原理是先画上一帧,接着保留原始图像,追加下一??枷瘢?酥址绞奖冉戏彼觯?婕盎?枷附冢?⑶颐挥型暾?⒘???ine对象数据。此种方法需要注意的地方是,若想生成连续的线图,则每次plot至少两个点,原理大家都应该理解,两点一线嘛!如果想每次一个点增量式的画图,则线型选择'.'。

2. 代码与图例

t=0;
t1=[0 0.1]; %若为'-'至少同时输入两个点,两点一线嘛!!!而'.'则不用
m1=sin(t1);
p = plot(t1,m1,'-b','MarkerSize',5); 
x=-1.5*pi;
axis([x x+2*pi -1.5 1.5]);
grid on;

for i=1:1000
 hold on
 t=0.1*i; %下一个点
 t1=t1+0.1; %下一段线
 m1=sin(t1);
 p = plot(t1,m1,'-b','MarkerSize',5); 
 x=x+0.1;
 axis([x x+2*pi -1.5 1.5]);
 pause(0.01);
end

Matlab使用Plot函数实现数据动态显示方法总结

set函数与drawnow函数组合

1. 方法介绍

这种模式比较适合画动画,效率比较高,刷新闪烁小,适合即时数据,最终的Line结构数据完整。
了解此方法之前要搞清楚 Plot函数的原型是什么: 每个Plot由一个句柄维护,而可以通过set函数对该句柄对应的plot参数在线的更新,若在线更新plot的数据,则可实现动态显示的效果。
最后使用drawnow函数对plot进行刷新。

2. 代码与图例

t=[0]
m=sin(t)
p = plot(t,m,'EraseMode','background','MarkerSize',5);
x=-1.5*pi;
axis([x x+2*pi -1.5 1.5]);
grid on;

for i=1:1000
 t=[t 0.1*i]; 
 m=[m sin(0.1*i)]; 
 set(p,'XData',t,'YData',m) 
 drawnow
 x=x+0.1; 
 axis([x x+2*pi -1.5 1.5]);
 pause(0.01);
end

Matlab使用Plot函数实现数据动态显示方法总结

总结

本文介绍了两种实现即时数据可视化的方法。也就是看上去的动态显示效果。分别给出了两种方法的原理介绍和示例程序与图例。相信这两个简单的例子经过你的运用可以变幻出多姿多彩的数据可视化效果。

到此这篇关于Matlab使用Plot函数实现数据动态显示方法总结的文章就介绍到这了,更多相关Matlab Plot数据动态显示内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python制作钉钉加密/解密工具
Dec 07 Python
Python实现统计文本文件字数的方法
May 05 Python
python 3利用Dlib 19.7实现摄像头人脸检测特征点标定
Feb 26 Python
python XlsxWriter模块创建aexcel表格的实例讲解
May 03 Python
Jupyter notebook远程访问服务器的方法
May 24 Python
python 进程间数据共享multiProcess.Manger实现解析
Sep 23 Python
使用python实现男神女神颜值打分系统(推荐)
Oct 31 Python
使用Python的Turtle绘制哆啦A梦实例
Nov 21 Python
用Python绘制漫步图实例讲解
Feb 26 Python
python 字符串的驻留机制及优缺点
Jun 19 Python
利用python汇总统计多张Excel
Sep 22 Python
Python中使用subprocess库创建附加进程
May 11 Python
如何用 Python 制作一个迷宫游戏
Feb 25 #Python
Django和Ueditor自定义存储上传文件的文件名
Feb 25 #Python
Python 图片处理库exifread详解
Feb 25 #Python
python中if嵌套命令实例讲解
Feb 25 #Python
Matplotlib animation模块实现动态图
Feb 25 #Python
python连接手机自动搜集蚂蚁森林能量的实现代码
Feb 24 #Python
Python爬取你好李焕英豆瓣短评生成词云的示例代码
Feb 24 #Python
You might like
模拟xcopy的函数
2006/10/09 PHP
php多个字符串替换成同一个的解决方法
2013/06/18 PHP
php的ajax简单实例
2014/02/27 PHP
Yii列表定义与使用分页方法小结(3种方法)
2016/07/15 PHP
AJAX的使用方法详解
2017/04/29 PHP
解决laravel 5.1报错:No supported encrypter found的办法
2017/06/07 PHP
支持汉转拼和拼音分词的PHP中文工具类ChineseUtil
2018/02/23 PHP
php开发最强大的IDE编辑的phpstorm 2020.2配置Xdebug调试的详细教程
2020/08/17 PHP
jQuery 位置函数offset,innerWidth,innerHeight,outerWidth,outerHeight,scrollTop,scrollLeft
2010/03/23 Javascript
js判断登录与否并确定跳转页面的方法
2015/01/30 Javascript
jQuery实现首页顶部可伸缩广告特效代码
2015/04/15 Javascript
javascript中一些util方法汇总
2015/06/10 Javascript
jquery移动点击的项目到列表最顶端的方法
2015/06/24 Javascript
Eclipse编辑jsp、js文件时卡死现象的解决办法汇总
2016/02/02 Javascript
Javascript之面向对象--方法
2016/12/02 Javascript
jquery Banner轮播选项卡
2016/12/26 Javascript
微信小程序 判断手机号的实现代码
2017/04/19 Javascript
vue2.0开发入门笔记之.vue文件的生成和使用
2017/09/19 Javascript
在 Node.js 中使用 async 函数的方法
2017/11/17 Javascript
JS实现的计数排序与基数排序算法示例
2017/12/04 Javascript
vue-prop父组件向子组件进行传值的方法
2018/03/01 Javascript
对vue2.0中.vue文件页面跳转之.$router.push的用法详解
2018/08/24 Javascript
利用chrome浏览器进行js调试并找出元素绑定的点击事件详解
2021/01/30 Javascript
[56:42]完美世界DOTA2联赛循环赛 Matador vs Forest 第二场 11.06
2020/11/06 DOTA
Python和php通信乱码问题解决方法
2014/04/15 Python
在Django的视图中使用form对象的方法
2015/07/18 Python
python3学习之Splash的安装与实例教程
2018/07/09 Python
pyqt 实现QlineEdit 输入密码显示成圆点的方法
2019/06/24 Python
python PyAUtoGUI库实现自动化控制鼠标键盘
2020/09/09 Python
HTML5未来发展趋势
2016/02/01 HTML / CSS
canvas画图被放大且模糊的解决方法
2020/08/11 HTML / CSS
荷兰音乐会和音乐剧门票订购网站:Topticketshop
2019/08/27 全球购物
介绍一下木马病毒的种类
2015/07/26 面试题
小学生读书感言
2014/02/12 职场文书
2015年超市收银员工作总结
2015/04/25 职场文书
护士工作心得体会
2016/01/25 职场文书