我正在做一个实验,在实验中,我测量温度读数,在温度和时间图上实时绘制结果。我目前使用的代码是关于这个数字的整个90秒数据的图表。我试着在这个数字上只显示10秒钟的数据,这样我就可以更好地分析数据。例如,对于前10秒,所有在第11秒要显示的数据,它将显示1-11秒的数据,然后显示数据2-12秒等等。我试图改变图形上的轴设置,但它不能很好地工作。这是我正在使用的代码
a=arduino('COM5');% connect to ardunino
ai_pin= 0;
tic;
i=0;
while toc<90;
i=i+1;
time(i)=toc;
toc_show=time(i)+10;
t(i)=a.analogRead(ai_pin); %temperature reading
figure(1);
plot(time,v);
axis([time(i),toc_show,0,500]);% should set axis to display needed data but doesn't work well
pause(0.01);
currFrame = getframe(gcf);
end发布于 2014-07-17 16:02:49
看起来,您正在设置x轴以显示下一个10秒,而不是之前的。
你可以用这个代替:
xmin = time(i) - 10;
xmax = time(i);
axis([xmin,xmax,0,500]);或者将前10秒的限制设置为0 10:
xmin = max(time(i) - 10, 0);
xmax = max(time(i), 10);https://stackoverflow.com/questions/24808057
复制相似问题