Delete line in GUI

6 Ansichten (letzte 30 Tage)
Andrew
Andrew am 10 Jan. 2013
Hello community,
I have got a GUI with axes. I've made a function which plot a line when I click mouse button. I need to delete previous line when I plot new one, but I want to leave alone other lines. How can I do that?
Andrew

Antworten (2)

Jan
Jan am 10 Jan. 2013
You can store the handles of objects you want to delete later:
AxesH = axes('NextPlot', 'add');
LineH = plot(1:10, rand(1, 10));
set(AxesH, 'UserData', LineH);
...
pause(2);
OldLineH = get(AxesH, 'UserData');
delete(OldLineH);
LineH = plot(1:10, rand(1, 10));
Setting 'NextPlot' to 'add' is equivalent to "hold on". Setting it to 'replace' let the plot() command remove all previously plotted objects automatically.

Azzi Abdelmalek
Azzi Abdelmalek am 10 Jan. 2013
A new plot will automatically erase the previous plot, unless there is something else then a line in your previous plot.

Kategorien

Mehr zu Specifying Target for Graphics Output finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by