Matlab中的命令hold on & hold off

时间:2023-01-30 17:53:48

     hold on是当前轴及图形保持住而不被刷新,这个方法适合于即时数据,原理是先画上一帧,接着保留原始图像,追加下一帧图像,此种方式比较繁杂,涉及到画图细节,并没有完整并连续的Line对象数据。此方法只能用在点或者分段划线。

    在Matlab中使用hold on模式控制动态画图程序代码如下:

%%
% Hold On 法
% 此种方法只能点,或者分段划线
hold off
t=0;
m=0;
t1=[0 0.1]; %要构成序列
m1=[sin(t1);cos(t1)];
p = plot(t,m,'*',t1,m1(1,:),'-r',t1,m1(2,:),'-b','MarkerSize',5);
x=-1.5*pi;
axis([x x+2*pi -1.5 1.5]);
grid on;

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


    运行时可以看到动态的作图,得到如下的图形:

Matlab中的命令hold on & hold off

 

    hold off:使得当前轴及图形不再具备被刷新的性质。