-
2013-04-19 11:33:19
j=1;
for i=1:max %max为最大时间
hold on;
if(i==t(j)) %t为时间向量
plot(x(j),y(j),'--ro');
j = j+1;
end
pause(0.1);%暂停0.1s
end
更多相关内容 -
如何使用Matlab绘制动态曲线,并生成gif图形
2021-07-15 22:49:45文章目录0. 原由1. 思路2. 函数3....Matlab中绘制动态曲线的基本思路:绘图并保存图形句柄,使用set函数循环改变图形句柄的xdata和ydata属性,对曲线坐标进行更新,形成动画效果。 保存gif图片的基0. 原由
可视化是Matlab软件的突出优势之一,经常需要将仿真或试验得到的数据可视化,有时还希望形成动态曲线,保存成动画,以便生动形象的展示数据。
1. 思路
Matlab中绘制动态曲线的基本思路:绘图并保存图形句柄,使用set函数循环改变图形句柄的xdata和ydata属性,对曲线坐标进行更新,形成动画效果。
保存gif图片的基本思路:动态绘图时将每个步长的figure状态保存到frame文件中,再将每一帧frame以图片格式保存到gif图片中,制定图片播放的时间间隔后,即可保存为gif动态图片。
2. 函数
作者使用Matlab软件开发了函数MovieXY.m和Fun_F2gif.m,分别实现动态曲线绘制和gif图片的保存,简单易用,下面通过实例详细演示。
function F = MovieXY(X,Y,dt,C) %% F = movieXY(X,Y,dt,C) 动画曲线,可用于数据回放 % X 曲线横坐标,n维列向量,或与Y通维的矩阵 % Y 曲线纵坐标,可为n维列向量或n*k矩阵(k条曲线) % dt 两相邻数据点之间的时间间隔,单位为秒 % dt影响数据回放的快慢,默认值为0.05s % C为标记结构体,字符类型,可选'*' 'o' 's'等 % 返回值F为动画的框架frame文件,可用于生成gif图片
function Fun_F2gif(F,filename,S) %% Fun_F2gif(F,filename,S) 将frame格式图片框架文件转换为gif图片 % F为frame格式结构体 % S为设置参数,默认为gif动画两帧之间的间隔 % filename为文件名,默认为'Test' % S为设置参数 S为单帧时间间隔
3. 演示
3.1 动态绘制圆
%% 1. 动态绘制圆 T = linspace(0,2*pi,100)'; X = cos(T); Y = sin(T); figure F = MovieXY(X,Y); % 绘制动态曲线 Fun_F2gif(F,'Test1.gif',0.01); % 生成gif图片
3.2 绘制动态正弦曲线
%% 2. 绘制动态正弦曲线 X = linspace(0,3,200)'; Y = [sin(2*pi*X) cos(2*pi*X) sin(2*pi*X)+cos(2*pi*X) ]; dt = 0.02; figure F = MovieXY(X,Y,dt); % 绘制动态曲线 Fun_F2gif(F,'Test2.gif',0.01); % 生成gif图片
3.3 绘制不同阻尼比二阶系统的动态阶跃响应曲线
T = linspace(0,30,100)'; sys1 = tf(1,[1 0.5 1]); % 阻尼比0.25 sys2 = tf(1,[1 1 1]); % 阻尼比0.5 sys3 = tf(1,[1 2 1]); % 阻尼比1 Y1 = step(sys1,T); Y2 = step(sys2,T); Y3 = step(sys3,T); dt = 0.01; figure F = MovieXY(T,[Y1 Y2 Y3],dt,{'*','o','s'}); % 绘制动态曲线 Fun_F2gif(F,'Test3.gif',0.01); % 生成gif图片
3.4 绘制旋转的五角星曲线
t = linspace(0,4*pi,100)'; s1 = 1 + 0.2*sin(5*t); s2 = 1 + 0.2*sin(5*t+2*pi/3); s3 = 1 + 0.2*sin(5*t+4*pi/3); x1 = s1.*cos(t+4*pi/3); y1 = s1.*sin(t+4*pi/3); x2 = s2.*cos(t+2*pi/3); y2 = s2.*sin(t+2*pi/3); x3 = s3.*cos(t); y3 = s3.*sin(t); X = [x1 x2 x3]; Y = [y1 y2 y3]; dt = 0.02; figure F = MovieXY(X,Y,dt,{'*','o','s'}); % 绘制动态曲线 Fun_F2gif(F,'Test4.gif',0.01); % 生成gif图片
推荐
联系作者
有Matlab/Simulink方面的技术问题,欢迎发送邮件至944077462@qq.com讨论。更多Matlab/Simulink原创资料,欢迎关注微信公众号:Matlab Fans
源程序下载: -
matlab中动态绘制曲线
2021-12-16 14:35:38此项目实现动态绘制曲线图,这只是其中的一种方法,还有很多其他的方法, 代码如下 clear clc x=linspace(0,10,100); y=sin(x); for i=1:numel(x) plot(x(1:i),y(1:i),'r') axis([min(x)*(11/10),max(x)*(11/10),...此项目实现动态绘制曲线图,这只是其中的一种方法,还有很多其他的方法,
代码如下clear clc x=linspace(0,10,100); y=sin(x); for i=1:numel(x) plot(x(1:i),y(1:i),'r') axis([min(x)*(11/10),max(x)*(11/10),min(y)*(11/10),max(y)*(11/10)]) %设置坐标轴的范围 hold on pause(0.1) end
有两个注意的点:
1.matalb坐标轴刻度范围默认是自适应的,所以要根据向量的大小设置坐标轴的范围,否则在动态绘图的过程中坐标轴范围会一直变,影响最终效果的呈现
2.在每一次绘图过程中,下一条曲线颜色和上一条曲线的颜色会不一样,所以要在plot函数中设置曲线的颜色,示例中曲线颜色设置为红色实现效果如下图
-
MATLAB 动态曲线 视频
2022-02-03 23:04:12最近做视频的时候,需要加上疫情数据变化曲线,动态的曲线变化更能体现抗击疫情的艰辛过程,所以利用 MATLAB做了个动态曲线。 数据因为较短,所以是自己手动录入的。 因为准备加到视频中使用,所以动态曲线输出...最近做视频的时候,需要加上疫情数据变化曲线,动态的曲线变化更能体现抗击疫情的艰辛过程,所以利用 MATLAB做了个动态曲线。
数据因为较短,所以是自己手动录入的。
因为准备加到视频中使用,所以动态曲线输出格式选择的是AVI格式。使用的函数为:writeVideo
使用格式如下:
aviobj=VideoWriter('example.avi');%新建叫example.avi的文件 aviobj.FrameRate = 1; % frame rate 帧率 open(aviobj); % 打开对象 for i=1:N % 生成每帧图像 一共N帧 currFrame = getframe; % 获取当前帧 writeVideo(aviobj,currFrame); % 保存当前帧 end close(aviobj); % 关闭保存视频
同时为了使横纵坐标消去,并调整图像横纵比使用如下操作:
set(gca,'xtick',[]) % 消除横坐标刻度 set(gca,'color','none'); % 消除坐标颜色 set(gca,'DataAspectRatio',[1,10,1]) % 控制横纵比
为了消去matlab画图背景颜色,采用如下操作:
set(gcf,'color','none'); % 消除图形颜色 set(gcf,'InvertHardCopy','off'); % 背景透明
完整代码如下:
figure() aviobj=VideoWriter('example.avi');%新建叫example.avi的文件 aviobj.FrameRate = 1; % frame rate 帧率 open(aviobj); % 打开对象 for i=1:N % 生成每帧图像 一共N帧 plot(1:i,num(1:i),'b','LineWidth',2);pause(0.5); axis([1,41,0,180]) set(gca,'xtick',[]) % 消除横坐标刻度 set(gca,'color','none'); % 消除坐标颜色 set(gca,'DataAspectRatio',[1,10,1]) % 控制横纵比 set(gcf,'color','none'); % 消除图形颜色 set(gcf,'InvertHardCopy','off'); % 背景透明 hold on currFrame = getframe; % 获取当前帧 writeVideo(aviobj,currFrame); % 保存当前帧 end close(aviobj); % 关闭保存视频
视频下方就是哦
西电老校区疫情记录,加油,自己也要加油
-
matlab画ROC曲线
2017-08-31 14:49:34使用matlab画ROC曲线,% predict - 分类器对测试集的分类结果 % ground_truth - 测试集的正确标签,这里只考虑二分类,即0和1 % auc - 返回ROC曲线的曲线下的面积 -
Matlab绘制频散曲线程序代码,matlab绘制双曲线程序,WORD
2021-09-10 17:01:06通过给出的源代码,可以依次绘制钢板频散曲线,希望可以帮助到你。 -
Matlab 的动态曲线绘图
2017-10-09 21:28:53动态曲线的绘制 This example shows how to create an animation of two growing lines. Theanimatedlinefunction helps you to optimize line animations. It allows you to add new points t -
MATLAB学习系列–绘制函数曲线
2021-01-07 03:24:02函数与分段函数绘制函数曲线直接使用M文件使用函数 function分段函数定义和使用法1:分段函数的输入参数是单个的X值法2:定义分段函数的输入参数是向量X 绘制函数曲线 直接使用M文件 绘制曲线: y = xe(1-x) x为[0:... -
matlab绘制曲线
2015-01-14 09:52:40matlab是数据处理方面很好的软件,尤其对画图来说是很多工程中必不可少的工具,所以这里画曲线代码回你非常有用 -
MATLAB绘制Bezier曲线
2017-05-02 19:35:18鼠标左键绘制点,右键拖动点,中键删除点 -
matlab 画双曲线代码
2018-03-20 15:27:12matlab 画双曲线 两种方法:ezplot函数和纯代码。。。 -
绘制阶跃响应曲线的matlab程序
2021-04-29 15:56:47绘制阶跃响应曲线的matlab程序,在自控、信号处理等课程中往往可能会用到,比较通俗易懂,方便学习~重新更新了一下资源,可以直接运行,这次注释得很详细!之前下载的同学请重新下载,谢谢! -
Matlab绘制曲线
2022-06-06 12:22:03绘制曲线 plot(x,y):x和y为长度相同的向量,分别用于存储x坐标和y坐标 plot(x1,y1,选项1,x2,y2,选项2...):多组折线 plot3(x1,y1,z1,选项1,xn,yn,zn,选项n) :空间曲线 fplot('fun',[a,b]):绘制fun函数在区间[a,b]上的... -
MATLAB绘制 维维安尼Viviani曲线 源代码程序-综合文档
2021-05-21 06:00:24MATLAB绘制 维维安尼Viviani曲线 源代码程序 -
如何能用Matlab绘制曲线图.pdf
2020-06-23 07:15:58实用标准文档 各位同学 在写论文和报告时为了很好地表达你研究和...软件流程图和实验装置原理框图 她将在部分曲线 图下面给出绘制图形的 Matlab 程序和相关步骤供大家学习和参考 例一 2.5 2.5 2 2 ) 1 V 1.5 1 2 ) 1.5 -
骨架曲线MATLAB程序,骨架曲线如何绘制,matlab
2021-09-10 21:07:11用matlab求解滞回曲线骨架曲线,并得到相应骨架曲线散点 -
matlab三维曲线绘图_matlab绘制函数的三维表面图
2020-11-03 07:38:05%画里面的小球 shading interp %使用插值的方式进行着色 hold on,mesh(X,Y,Z,colormap(hot, hold off hidden off %透视外面大球看到里面小球 axis equal,axis off %坐标轴三个方向上刻度增量相同并消隐 -
matlab绘制Ekman螺旋曲线.m
2021-11-08 19:40:30matlab绘制Ekman 螺旋曲线 -
matlab中动态绘制3D心形曲线
2011-12-15 18:46:55此代码可用于绘制3D的心形,可以演示给自己的女朋友看哦~ -
用MATLAB画贝塞尔曲线和B样条曲线
2017-12-29 09:56:52用鼠标点击图片上的点,即可根据所选的点生成相应的贝塞尔曲线和B样条曲线。 -
MATLAB绘制 维维安尼Viviani曲线
2018-04-21 17:13:33MATLAB绘制 维维安尼Viviani曲线 源代码程序 部分源码 clear close all syms s t k u r; x1='2*sin(s)*cos(t)';y1='2*sin(s)*sin(t)';z1='2*cos(s)'; x2='-2*cos(k)*cos(k)';y2='2*sin(k)*cos(k)';z2='u'; subplot... -
负载曲线绘制功能:此功能绘制指定持续时间内的电负载消耗。-matlab开发
2021-05-28 22:38:48要绘制电力系统中的负载模式消耗,通常需要一个持续时间和该时间段内的消耗功率值。 此功能绘制给定时间段内的负载曲线。 -
如何在Matlab中绘制曲线
2021-04-18 07:21:42您需要定义要绘制的中间点.然后您可以手动定义它们,也可以查看样条插值.使用样条插值时,只需要一个中间点即可确定完整曲线.在MATLAB中,你可以找到类似这样的演示spline2d.以下是它的要点:% end pointsX = [0 1];Y =... -
ExtractSkeleton_matlab滞回曲线_滞回曲线_骨架曲线_滞回骨架
2021-09-11 12:12:04从滞回曲线中提取骨架曲线,程序使用matlab,生成数据导入表格绘图 -
matlab绘制平滑曲线
2021-04-23 16:56:27曲线图 Matlab作图是通过描点、连线来实现的,故在 画一个曲线图形之前,必须先取得该图形上的一系 列的......二维图形 三维图形 图形处理实例 特殊二、三维图形 1.曲线图 Matlab作图是通过描点、连线来实现的,故在 画... -
用MATLAB绘制可选性曲线.pdf
2021-07-10 14:41:37用MATLAB绘制可选性曲线.pdf -
磁性材料磁化曲线和磁滞回线的Matlab绘制与拟合.pdf
2021-06-28 12:08:17磁性材料磁化曲线和磁滞回线的Matlab绘制与拟合.pdf -
MATLAB 绘制函数曲线图
2021-04-21 05:36:42原创MATLAB 绘制函数曲线图2011-7-13 22:41765544(1)y=1/x:n=0:10:1000;y=1./n;plot(n,y)grid on(2)y=x*x:n=-1000:10:1000;y=n.*n;plot(n,y)grid on(3)x=0:1:1000;y=0.065*x+(102*x)+(7154*100./(x+100));... -
MATLAB用于照明实训中等光照度曲线的绘制.pdf
2021-06-29 14:42:26MATLAB用于照明实训中等光照度曲线的绘制.pdf -
matlab绘制曲线代码-diffgeom2pose:从微分几何估计相机姿态
2021-06-01 23:21:32matlab绘制曲线代码此代码估计照片的拍摄位置,给出一对 3D 局部几何结构(微分几何)及其在 2D 图像中的投影。 两种特殊情况很常见 一对 3D-2D SIFT 特征(3D 只是 SIFT 中心,从另外两个图像重建 3D SIFT 方向) ...