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实现可以断点续传和并发的ftp程序
Sep 13 Python
Python与Java间Socket通信实例代码
Mar 06 Python
Python删除Java源文件中全部注释的实现方法
Aug 30 Python
python中实现数组和列表读取一列的方法
Apr 03 Python
对python中的pop函数和append函数详解
May 04 Python
python 2.7 检测一个网页是否能正常访问的方法
Dec 26 Python
pyqt5与matplotlib的完美结合实例
Jun 21 Python
简单瞅瞅Python vars()内置函数的实现
Sep 27 Python
Python PyPDF2模块安装使用解析
Jan 19 Python
django 扩展user用户字段inlines方式
Mar 30 Python
在python3.9下如何安装scrapy的方法
Feb 03 Python
Matplotlib绘制条形图的方法你知道吗
Mar 21 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
PHP mkdir()定义和用法
2009/01/14 PHP
Win下如何安装PHP的APC拓展
2013/08/07 PHP
php实现水仙花数的4个示例分享
2014/04/08 PHP
PHP获取Exif缩略图的方法
2015/07/13 PHP
php比较两个字符串长度的方法
2015/07/13 PHP
php基于curl实现的股票信息查询类实例
2016/11/11 PHP
php实现算术验证码功能
2018/12/05 PHP
php7新特性的理解和比较总结
2019/04/14 PHP
PHP7.3.10编译安装教程
2019/10/08 PHP
PHP PDO和消息队列的个人理解与应用实例分析
2019/11/25 PHP
用jquery实现自定义风格的滑动条实现代码
2011/04/26 Javascript
js 回车提交表单两种实现方法
2012/12/31 Javascript
关于页面嵌入swf覆盖div层的问题的解决方法
2014/02/11 Javascript
jQuery实现的导航条切换可显示隐藏
2014/10/22 Javascript
node.js中的fs.fchown方法使用说明
2014/12/16 Javascript
Underscore源码分析
2015/12/30 Javascript
Angular.js回顾ng-app和ng-model使用技巧
2016/04/26 Javascript
AngularJS入门教程之REST和定制服务详解
2016/08/19 Javascript
微信小程序之ES6与事项助手的功能实现
2016/11/30 Javascript
js仿微博动态栏功能
2017/02/22 Javascript
实时监控input框,实现输入框与下拉框联动的实例
2018/01/23 Javascript
如何在Express4.x中愉快地使用async的方法
2020/11/18 Javascript
原生JS实现京东查看商品点击放大
2020/12/21 Javascript
[01:31](回顾)杀出重围,决战TI之巅
2014/07/01 DOTA
[32:17]完美世界DOTA2联赛循环赛LBZS vs Forest第二场 10月30日
2020/10/31 DOTA
Python的类实例属性访问规则探讨
2015/01/30 Python
Python中多线程的创建及基本调用方法
2016/07/08 Python
Python迭代器与生成器用法实例分析
2018/07/09 Python
Python基于递归算法求最小公倍数和最大公约数示例
2018/07/27 Python
python合并已经存在的sheet数据到新sheet的方法
2018/12/11 Python
详解CSS3浏览器兼容
2016/12/14 HTML / CSS
ZWILLING双立人法国网上商店:德国刀具锅具厨具品牌
2019/08/28 全球购物
学校大课间活动方案
2014/01/30 职场文书
师范大学生求职信
2014/06/13 职场文书
行政处罚事先告知书
2015/07/01 职场文书
动画《新网球王子 U-17 WORLD CUP》希腊队PV公开
2022/04/02 日漫