How to assign yyaxis 'Label' and 'Range' to UIAxes in matlab appdesigner (R2020a)

49 visualizzazioni (ultimi 30 giorni)
i was try to assign third axis for app.UIAxes in matlab appdesinger, i tried
app.UIAxes.ZAxis = zlabel
but didnt worked...!!!
kindly suggest a Solution.

Risposta accettata

Adam Danz
Adam Danz il 17 Ott 2020
Modificato: Adam Danz il 17 Ott 2020
The z axis is the 3rd dimension but your plot is 2D.
You yyaxis to assign an independent label to the right y-axis. Then link the two yaxes so that if properties of one change, the other axis will remain identical.
Demo:
% Create a demo uiaxes
app.UIAxes = uiaxes();
% Define right axis label
yyaxis(app.UIAxes, 'right')
ylabel(app.UIAxes, 'Right Side Label')
% Set axis colors to match the x axis color
set(app.UIAxes.YAxis, 'Color', app.UIAxes.XAxis.Color)
% Go back to the left y-axis and assign ylabel
yyaxis(app.UIAxes, 'left')
ylabel(app.UIAxes, 'Left Side Label')
% [DO ALL PLOTTING HERE]; Demo:
plot(app.UIAxes, randi(100,1,20), randi(50, 1,20), 'o')
% After plotting is done, link the y axes
% Link yaxis properties
app.UIAxes.UserData = linkprop(app.UIAxes.YAxis,...
{'Limits','LimitsMode','TickValues','TickLabelFormat','Scale',...
'Color','FontSize'}); %add more as needed
Result:
  2 Commenti
taimour sadiq
taimour sadiq il 17 Ott 2020
Modificato: taimour sadiq il 17 Ott 2020
Dear Adam Much thanks for Correcting my question, which i was not able to explain properly. U picked the right words for my Question... yes zaxis is used for 3d plot. i actually wants yyaxix on opposite side of plot which should remain fixed as u also Described.
Adam Danz
Adam Danz il 17 Ott 2020
Sounds good. Two critical things to remember:
  • Use yyaxis(app.UIAxes, 'left') or yyaxis(app.UIAxes, 'right') to control which side you're working with.
  • Place the app.UIAxes.UserData = linkprop... line after doing the plotting.

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by