Overlay plot of UIAxes
9 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
prrrrr
am 21 Jul. 2020
Kommentiert: Adam Danz
am 21 Jul. 2020
i have a field in which i plot something. as soon as i click on a button the code is executed.
plot(app.UIAxes3,track,bottomLine,'r',track,topLine,'g');
hold(app.UIAxes3,'on')
plot(app.UIAxes3,track,-bottomLine,'r',track,-topLine,'g');
now i would like to plot a vertical line over it, which i move from left to right depending on a variable change. Without always replotting the image. Is that possible?
the image should only be replotted when I press the button again
Thanks
0 Kommentare
Akzeptierte Antwort
Adam Danz
am 21 Jul. 2020
Bearbeitet: Adam Danz
am 21 Jul. 2020
You can plot the line using xline() and then merely update it's Value property to move it. The line's handle must be stored as an app property.
2) Plot the line somewhere in your code (a callback function or at startup) and store the handle.
app.verticalLineHandle = xline(app.UIAxes3, 0); % this plots the vert line at x=0
3) In your button callback function, all you need to do is change the value of the line to move it.
app.verticalLineHandle.Value = 1; % Now the line is at x=1
4 Kommentare
Adam Danz
am 21 Jul. 2020
Yes, that's the correct way to implement it.
A line will be produced every time you call the xline() function. So, only call that once. Then update the xline value as needed.
To delete the line,
delete(app.verticalLineHandle)
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Startup and Shutdown 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!