How can I change the values of a plot inside a loop?

8 Ansichten (letzte 30 Tage)
Lobo
Lobo am 11 Dez. 2013
Beantwortet: Lobo am 11 Dez. 2013
Hi all,
I want to plot something and then change the values of some variables inside a loop without plotting everything again. I think something as 'handle' and 'set' would help but, honestly, I do no have any idea of how to use it. I am going to use real-time data, so I want to use quick functions, this is the reason because I don't want to plot again and just change the values inside a plot already defined. Something like that:
h=plot(x,y)
n=0;
while n<5
x=x+n;
y=y-n;
%%change the values of x and y in the previous plot%%
n=n+1;
end

Akzeptierte Antwort

Kelly Kearney
Kelly Kearney am 11 Dez. 2013
You can set the 'xdata' and 'ydata' properties of the line. You may have to make sure you set your axis limits so they aren't reset as the data moves.
x = sort(rand(10,1));
y = rand(10,1);
h = plot(x,y);
set(gca, 'xlim', [0 20], 'ylim', [-10 1]);
n=0;
while n<5
x=x+n;
y=y-n;
n=n+1;
set(h, 'xdata', x, 'ydata', y);
pause(1);
end

Weitere Antworten (1)

Lobo
Lobo am 11 Dez. 2013
That is exactly was I was looking for. Thank you very much!

Kategorien

Mehr zu 2-D and 3-D Plots finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by