Why does a PLOT command in the timer function generate a new figure without plotting into the existing GUI?
1 view (last 30 days)
Show older comments
I start a timer object, which has PLOT command in its TimerFcn, by clicking a button in my GUI. The first plot is plotted in the axes in my GUI as desired but subsequent plots are plotted in a new figure window.
I want to know how I can plot all the plots in the same axes in the GUI.
Accepted Answer
MathWorks Support Team
on 27 Jun 2009
The HandleVisibility property of the figure window (for the GUI) and the axes is set to Callback by default. Thus, these handles will only be visible in a callback routine.
When you click the button and start the timer object, the first call to the TimerFcn will be within the callback and hence the axes in the GUI will be visible to it. The TimerFcn can plot into the axes in the GUI. However, subsequent plots from the TimerFcn are not from a callback. Hence, a new figure window is generated instead of plotting into the same axes in the GUI.
As a workaround, to be able to plot into the same axes, set the HandleVisibility property for the GUI (which can be obtained by double clicking anywhere on the GUIDE window except for a UIControl object) and for the axes to ON.
0 Comments
More Answers (0)
See Also
Categories
Find more on Migrate GUIDE Apps in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!