Matlab高级教程_第四篇:Matlab高级函数_关键词:drawnow,addpoints,animatedline,getpoints
0. MATLAB真实航母基本的工具,其中的函数/工具不计其数,而且有些函数/工具非常的炫酷。在MATLAB第四篇章把平时工作中用到的些许函数进行使用的讲解
主题1.:drawnow
解释:更新图窗并处理回调
说明:drawnow更新图窗并处理任何挂起的回调。如果您修改图形对象并需要在屏幕上立即查看此次更新,请使用该命令。这就是把图形更新的过程进行动态的流数据的动画。
后面有几个方法:
方法1.limitrate,更新数量限制为每秒20帧。如果上次更新后不到50毫秒,则会丢弃新的更新
方法2:nocallbacks,会延迟回调,知道下一个完整的命令。
方法3:limitrate nocallbacks降序局更新限制为每秒20帧
方法4:update会跳过更新并延迟回调(不建议)
方法5:expose,更新窗口延迟(不建议)
主题2:addpoints
解释:向动画线条中添加点
说明:
addpoints(an,x,y) % 二维的
addpoints(an,x,y,z) % 三维的,
an:指定动画线条中添加x和y的点
主题3:animatedline
解释:创建动画线条
说明:
an = animatedline
an = animatedline(x,y)
an = animatedline(x,y,z)
an = animatedline(___,Name,Value)
an = animatedline(ax,___)
因此:主题1,主题2,主题3可以结合起来组成一个使用
% 首先创建动画线条
h = animatedline('LineStyle','-.','LineWidth',0.01,'Marker','>','Color','r');
% 确定x,y
x = linspace(0,4*pi,10000);
y = cos(x);
% 进行循环画图上的点
for k = 1:10000
addpoints(h,x(k),y(k));
%动画
drawnow update % 快速更新前面的点
end
drawnow % 可以标注时间段的方式
% 首先创建动画线条
h = animatedline('LineStyle','-.','LineWidth',0.01,'Marker','>','Color','r');
% 确定x,y
x = linspace(0,4*pi,10000);
y = cos(x);
a = tic; % start timer
% 进行循环画图上的点
for k = 1:10000
addpoints(h,x(k),y(k))
b = toc(a); % check timer
if b > (1/10)
drawnow % update screen every 1/30 seconds
a = tic; % reset timer after updating
end
end
drawnow
好有意思的动态图示。其实还有一些常用的。后面有机会再说
主题4:gepoints(h)
获取返回线条中的点
h = animatedline(1:10,1:10);
[x,y] = getpoints(h)
x = 1×10
1 2 3 4 5 6 7 8 9 10
y = 1×10
1 2 3 4 5 6 7 8 9 10
最新文章
- ExtJS面向对象
- Visual Studio配色方案
- Html5 学习系列(五)Canvas绘图API快速入门(1)
- Leetcode | Minimum/Maximum Depth of Binary Tree
- CentOS7.1 Xshell 经常掉线 Connection closed by foreign host
- kvm上安装xp
- 2015.9.11模拟赛 codevs4162 bzoj1774【无双大王】
- UGUI Button和Toogle动态添加事件
- HDU 4548(美素数)
- 关于margin-right的应用问题
- oracle 字段类型详解
- jquery 的 each 方法中 return 的坑
- 解决Webstom 2017中,输入法候选框无法显示问题
- 如何更改Ubuntu的root密码
- requests-文件上传
- elementui el-upload 在v-for里使用时 如何获取index
- 用原生js+canvas实现五子棋
- java----牛客练习
- Docker 部署 elk + filebeat
- mysql 主键和唯一索引的区别