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

9 ビュー (過去 30 日間)
Lobo
Lobo 2013 年 12 月 11 日
回答済み: Lobo 2013 年 12 月 11 日
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

採用された回答

Kelly Kearney
Kelly Kearney 2013 年 12 月 11 日
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

その他の回答 (1 件)

Lobo
Lobo 2013 年 12 月 11 日
That is exactly was I was looking for. Thank you very much!

カテゴリ

Help Center および File Exchange2-D and 3-D Plots についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by