何成文
0079:Matlab实时动画显示数据图形
2019-6-11 16:42
阅读:5434
标签:matlab动画

源代码:

t=[0]

m=[sin(t);cos(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]; 

 wu=[sin(0.1*i);cos(0.1*i)]

 m=[m wu]; 

 set(p(1),'XData',t,'YData',m(1,:));

 set(p(2),'XData',t,'YData',m(2,:));

 drawnow

 x=x+0.1; 

 axis([0 x+2*pi -1.5 1.5]);

 pause(0.01);

end


方式2:

clc;

clear;

close all;


t=[0]

m1=[sin(t)];

m2=[cos(t)];

subplot(1,2,1);p1 = plot(t,m1,'EraseMode','background','MarkerSize',5);grid on;

subplot(1,2,2);p2 = plot(t,m2,'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]; 

 m1=[m1 sin(0.1*i)];

 m2=[m2 cos(0.1*i)]; 

 set(p1,'XData',t,'YData',m1);

 axis([0 x+2*pi -1.5 1.5]);grid on;drawnow

 set(p2,'XData',t,'YData',m2);

 drawnow

 x=x+0.1; 

%  axis([0 x+2*pi -1.5 1.5]);

end


方式3:

clc;

clear;

close all;


t=[0]

m1=[sin(t)];

m2=[cos(t)];

p1 = plot(t,m1,'EraseMode','background','MarkerSize',5);hold on;

p2 = plot(t,m2,'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]; 

 m1=[m1 sin(0.1*i)];

 m2=[m2 cos(0.1*i)]; 

 set(p1,'XData',t,'YData',m1);

 drawnow

 set(p2,'XData',t,'YData',m2);

 drawnow

 x=x+0.1; 

 axis([0 x+2*pi -1.5 1.5]);

 pause(0.01);

end


效果图:


转载本文请联系原作者获取授权,同时请注明本文来自何成文科学网博客。

链接地址:https://wap.sciencenet.cn/blog-2777453-1184366.html?mobile=1

收藏

分享到:

当前推荐数:0
推荐到博客首页
网友评论0 条评论
确定删除指定的回复吗?
确定删除本博文吗?