How to plot values over time?

41 visualizzazioni (ultimi 30 giorni)
zephyr21
zephyr21 il 21 Giu 2016
Commentato: Walter Roberson il 22 Giu 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

Risposte (1)

Walter Roberson
Walter Roberson il 21 Giu 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 Commenti
zephyr21
zephyr21 il 21 Giu 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 il 22 Giu 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))

Accedi per commentare.

Categorie

Scopri di più su Animation in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by