Axes Toolbar customization in App Designer
35 views (last 30 days)
Show older comments
The Axes Toolbar of a uiaxes object created in App Designer appears by default with the following buttons: Export, Pan, Zoom In, Zoom Out, Restore View. Is there any way to provide the default functionality you get from the Axes Toolbar created when you call the plot function from an m-file or the command line? I want to provide the Brush and Data Cursor buttons and the functionality you get when right-clicking in the axes object after selecting a button from the toolbar (Export Cursor Data to Workspace, Horizontal/Vertical/Unconstrained Pan and Zoom, etc.). I do realize you can zoom in horizontally and vertically in the uiaxes object by dragging the cursor in a straight line. Double-clicking in the axes object normally restores the view, but that functionality also seems to be missing.
I attempted to create my own toolbar with the axtoolbar command as follows:
app.UIAxes.axtoolbar({'export','brush','datacursor','pan','zoomin','zoomout','restoreview'});
The axtoolbar property does not appear to be useable within App Designer. Is this the case? If so, is there any way to provide the standard Axes Toolbar functionality I described in App Designer?
Thanks.
4 Comments
Ajeya Gupta
on 14 Oct 2020
Hi Matt,
Did you arrive at a solution to this problem? I am looking to modify the appearance of Axes toolbar on Matlab's Appdesigner. I am currently using Matlab 2020a version. The only function that works with app.UIAxes is 'Visible'. I am not able to modify the contents of toolbar on top right.
Thanks,
Ajeya
Answers (2)
Payas Bahade
on 29 Apr 2020
Hi Matt,
Starting from MATLAB R2020a, axes toolbar of UIAxes in App Designer supports functionalities like persistent data tips, brushing data points and ‘export to workspace’ option in context menu. For more details, please refer ‘App Building’ section in release notes of R2020a.
Hope this helps!
2 Comments
Stefan
on 26 Oct 2020
Is there a way to use the classical Data Tip Tool in a UI Axes? (Datacursor as mentioned in the toolbar doc?)
I'm trying:
axtoolbar(app.UIAxes,{'export','datacursor','zoomin','zoomout','restoreview'});
But the datacursor is left out (2020b)
Tim Felix Liesching
on 21 Jan 2021
Edited: Tim Felix Liesching
on 21 Jan 2021
Same problem here. Data cursor is left out. Did anyone solve the issue?
Lior de Marcas
on 27 Aug 2023
Edited: Lior de Marcas
on 27 Aug 2023
This might be solved as of 2023a, at least in MATLAB online it seem like it.
For older version:
As a workaround I just made my own "custom" data-tips button.
The custom button is showing, and seems to behave alright: (tested 2022a):
% open empty figure & plot something
f = uifigure();
ax = uiaxes(f);
plot(ax,1:10)
% collect the axtoolbar, and add custom button
tb = axtoolbar(ax,"default");
axtoolbarbtn(tb,"state","Icon","datacursor","Tooltip","Data Tips",...
"ValueChangedFcn",@(e,d)datacursormode(ancestor(d.Source,'figure'),d.Value))
% the ValueChangedFcn is taken from the original button, as-is.
0 Comments
See Also
Categories
Find more on Interaction Control 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!