How to plot values over time?

42 views (last 30 days)
zephyr21
zephyr21 on 21 Jun 2016
Commented: Walter Roberson on 22 Jun 2016
I have an output that spits out 60 different values over the course of N=60 timesteps. How can I plot these values vs time? My current code is:
for n=1:N
plot(T(n),rate(4,10,n))
end
rate(4,10,n) indicates the value at i=4 and j=10 of that matrix

Answers (1)

Walter Roberson
Walter Roberson on 21 Jun 2016
You could add a drawnow() or pause() after your plot() call.
You might also want to see animatedline() . It is also common to use waterfall plots with x being the time axis.
  2 Comments
zephyr21
zephyr21 on 21 Jun 2016
I keep getting a blank graph. rate(:,:,n) is an 11,14 matrix at timestep n. I specify rate(4,10,n) because there is only one number in that matrix, at (4,10)
Walter Roberson
Walter Roberson on 22 Jun 2016
The default marker is empty for plot, and when you only plot one point at a time there will be no line to connect. You should specify a marker, like
plot(T(n), rate(4,10,n), '*')
However you should only do that if you want the position to be "animate". If you just want to draw all of them, then you should not use a loop and should instead use
plot(T(1:n), rate(4, 10, 1:N))

Sign in to comment.

Categories

Find more on Animation 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!