Effacer les filtres
Effacer les filtres

Plot in real time

432 vues (au cours des 30 derniers jours)
Caleb
Caleb le 25 Juil 2013
Commenté : Khang Nguyen le 7 Sep 2023
I want to take a 2-dimensional vector and plot it, but I want to show the line being drawn as if the data is being gathered in real time. However, I'll have the data already stored in an array.
For example, if I wanted to plot y = sin(x) from x = 1 to 25, then I would use the following command:
plot(sin(1:0.01:25));
But I want to see the curve being drawn as if it's being done in real-time. How would I do this?

Réponse acceptée

the cyclist
the cyclist le 25 Juil 2013
One possible way:
x = 1:0.01:25;
y = sin(x);
n = numel(x);
figure
hold on
for i = 1:n
plot(x(1:i),y(1:i))
xlim([0 25])
ylim([-1.1 1.1])
pause(0.05)
end
  4 commentaires
Alireza Madani
Alireza Madani le 30 Avr 2022
Does anyone know how can we program this scenario in a way that the speed of the while/for loop is controller with the real time? For example if we want to plot y = sin(t) and t = 0 : 0.01 : 25. It actually takes 25 seconds for the MATLAB to plot this.
Khang Nguyen
Khang Nguyen le 7 Sep 2023
Hi, can you graph multiple plots live at the same time?

Connectez-vous pour commenter.

Plus de réponses (1)

Anshul Rathore
Anshul Rathore le 25 Mar 2019
Don't use hold on instead use drawnow function to update your plots as it is much faster.
x = 1:0.01:25;
y = sin(x);
n = numel(x);
figure;
for i = 1:n
plot(x(1:i),y(1:i),'-r');
xlim([0 25]);
ylim([-1.1 1.1]);
drawnow;
end
  2 commentaires
Abdoo
Abdoo le 12 Fév 2021
Modifié(e) : Abdoo le 12 Fév 2021
could you show me, how I can plot on real time reading from usb?
Jonathan Arias
Jonathan Arias le 22 Mai 2021
you have to add this line (before drawnow):
addpoints(an,x(i),y(i));
More examples: https://la.mathworks.com/help/matlab/ref/drawnow.html

Connectez-vous pour commenter.

Catégories

En savoir plus sur Graphics Performance dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by