How can I create a plot where the graph shifts as the data extends?
Show older comments
Hey all,
I want to make a pressure vs time graph that shifts the graph over to the right as time extends. I don't want to keep the old data in view. How can I do this?
Here's the current code:
hold on
for i=1:21598 %number of data points
ylim([0 60])
plot((data.time(i)-datenum(2013,01,00)),data.P(i));
drawnow;
pause(.1);
end
Right now the code plots the data, but keeps auto sizing the graph as the number of points increase. It also gets really slow as more points are added.
Answers (3)
the cyclist
on 12 Jul 2013
Does this help?
figure
hold on
dd = data.time - datenum(2013,01,00);
for i=1:21598 %number of data points
plot(dd(i),data.P(i));
ylim([0 60])
drawnow;
pause(.1);
end
chef13
on 8 Aug 2013
I solved plotting and then write:
xlim([i-50,i+50])
Let me know if this helps, Fabrizio.
Iain
on 8 Aug 2013
a = plot(((data.time(1)-datenum(2013,01,00)),data.P(1));
for i = 1:21598
set(a,'Xdata',data.time(i)-datenum(2013,01,00)),'YData',data.P(i))
axis([desired_xmin, desired_xmin+desired_range, 0 60])
drawnow
end
Categories
Find more on Graphics Performance in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!