How I can do auto-resized axes in App Designer?
33 次查看(过去 30 天)
显示 更早的评论
Hello! I have done app by AppDesigner, and main window (figure) is resized. But Axes with plots dont change their size. How it may be fix?
0 个评论
回答(2 个)
Lucas Chomey
2023-2-13
Do the command:
axis(app.UIAxes1,"auto"); % UIAxes1 is just the name of the plot window
For auto adjusting the plot window to show all data being plotted.
2 个评论
David
2023-6-30
Hello. I have the same problem than Pavel.
The 2 answers does not solve the problem. Concerning "normalise", like Pavel, I don't find these options.
And the solution with axis, doesn't work for this problem because it s not to fit to the data in the uiaxes. The problem is when the uifigure is resized, the uiaxes doesn't resize well.
Thank you all for your reply because I tried lot of things without success.
Rik
2022-2-20
You should confirm the units property of your axes is set to normalized. If this is not possible you will have to use a listener that will resize the axes when the figure changes size.
3 个评论
Ramanan
2024-1-11
编辑:Ramanan
2024-1-12
Unfortunately, the app designer UI doesn't provide you with the option to change the units property. Alternatively, you can create a panel in the app designer window and place the UIAxes under the panel. Then in the startup function, add the below commands.
app.UIAxes.Units = "normalized"; % Changes units to scalable
app.UIAxes.Position = [0 0 1 1]; % Position [x,y] = [0,0] and [Xsize,YSize] = [1 1] of the parent object (Panel element)
It worked for me.
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!