Pop-out axes from appdesigner into a separate figure
22 views (last 30 days)
Show older comments
I have an app from appdesigner. There is an axes in this app, and I would like to pop-out this axes into a separate figure. Is there a way to do this?
Note: I see that it is possible to "Open in figure window" when using the Live Editor. Can the same functionality be replicated with axes in the appdesigner?
Accepted Answer
Ruchika Parag
on 19 Jul 2024
Hi Quy, to pop out axes from an App Designer app into a separate figure window, you have to create a new figure and copying the content of the axes from the app to this new figure. Here is a step-by-step guide to achieve this:
- Create a Button in Your App: Add a button in your App Designer app to trigger the pop-out action.
- Button Callback Function: Implement the callback function for the button to create a new figure and copy the axes content.
Here is how you can implement the functionality:
- Add a Button: Add a button in your app.
- Button Callback: Implement the callback for the button.
% Button pushed function: PopOutButton
function PopOutButtonPushed(app, event)
% Create a new figure
newFig = figure;
% Create new axes in the new figure
newAxes = axes(newFig);
% Copy the content of the original axes to the new axes
copyobj(allchild(app.UIAxes), newAxes);
% Set the limits and labels of the new axes to match the original
newAxes.XLim = app.UIAxes.XLim;
newAxes.YLim = app.UIAxes.YLim;
newAxes.ZLim = app.UIAxes.ZLim;
newAxes.XLabel.String = app.UIAxes.XLabel.String;
newAxes.YLabel.String = app.UIAxes.YLabel.String;
newAxes.ZLabel.String = app.UIAxes.ZLabel.String;
newAxes.Title.String = app.UIAxes.Title.String;
end
By following these steps, you can effectively pop out an axes from an App Designer app into a separate figure window. I hope this is helpful!
3 Comments
More Answers (0)
See Also
Categories
Find more on Migrate GUIDE Apps in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!