How to plot values over time?

28 visualizaciones (últimos 30 días)
zephyr21
zephyr21 el 21 de Jun. de 2016
Comentada: Walter Roberson el 22 de Jun. de 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

Respuestas (1)

Walter Roberson
Walter Roberson el 21 de Jun. de 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 comentarios
zephyr21
zephyr21 el 21 de Jun. de 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 el 22 de Jun. de 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))

Iniciar sesión para comentar.

Categorías

Más información sobre Animation en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by