Axes Toolbar customization in App Designer

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 Commenti

Did you find a solution? I have the same problem.
Thanks
I was never able to make this work. It looks like MATLAB 2020a has the ability to do what I described, per Payas’s comment, but I personally do not have access to that version yet.
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
Ajeya,
I never found a solution and have not had time to revisit the issue. Check the answer provided by Payas below. It sounded like at least some of what I was looking for may be available in R2020a, but while I now have access to R2020a, I have not had an opportunity to install and use it for any task.
Matt

Accedi per commentare.

Risposte (2)

Payas Bahade
Payas Bahade il 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 Commenti

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
Tim Felix Liesching il 21 Gen 2021
Modificato: Tim Felix Liesching il 21 Gen 2021
Same problem here. Data cursor is left out. Did anyone solve the issue?

Accedi per commentare.

Lior de Marcas
Lior de Marcas il 27 Ago 2023
Modificato: Lior de Marcas il 27 Ago 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.

Categorie

Scopri di più su Develop Apps Using App Designer in Centro assistenza e File Exchange

Prodotti

Release

R2019a

Richiesto:

il 23 Apr 2020

Modificato:

il 27 Ago 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by