修改后的代码如下所示:

x = 0:0.01:5; % 函数变量取值范围
 
y = sin(x);  % 函数
 
plot(x,y);
 
hold on
 
h1 = plot(0,sin(0),'or'); % 小球1
 
h2 = plot(0,sin(0),'ob'); % 小球2
 
line_handle = line([0 0],[0 0],'Color','g'); % 初始化连线
 
for ii = 0:0.01:5
 
    data = sin(ii);
 
    set(h1,'Xdata',ii,'Ydata',data);
    
    set(h2,'Xdata',ii,'Ydata',2*data); % 小球2的y坐标是小球1的两倍
    
    set(line_handle,'Xdata',[get(h1,'Xdata') get(h2,'Xdata')],'Ydata',[get(h1,'Ydata') get(h2,'Ydata')]); % 更新连线的坐标
 
    pause(0.01);   % 调整速度
 
end

在原代码的基础上,添加了一个名为line_handle的变量来保存连线对象。在每次循环中,通过set函数更新连线的坐标,即小球1和小球2的坐标,从而实现只显示当前时刻两小球的连线,之前时刻的连线会被更新为当前时刻的连线


原文地址: https://www.cveoy.top/t/topic/irZp 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录