x = 00015; 函数变量取值范围 y = sinx; 函数 plotxy; hold on h1 = plot0sin0or; 小球1 h2 = plot0sin0ob; 小球2 for ii = 00015 data = sinii; seth1XdataiiYdatadata;
修改后的代码如下所示:
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 著作权归作者所有。请勿转载和采集!