How to set axis in more details?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Dear all,
I want to know if it is possible to set YTickDir = "out" and keep the yticks on the left y axis only. (As far as I know, there no such properties name "YTickDir" for axes.) In my case, I don't know how to remove the ticks of right yaxis.
It cannot be better if I could set XTickDir and YTickDir separately, just like xmgrace. Actually I woud use MATLAB to replace xmgrace to plot as I can use scripts to control my plots, which is very convenient. I hope that the MathWorks Team would hear my voice to provide more properties to control figure. I know there are hidden properties but I don't know where I can find them.
Best regards,
Qilin.
x = linspace(0.0, 12.0, 21);
J0 = besselj(0, x);
figure; plot( x, J0, 'ro-' );
h = gca;
h.TickDir = 'out'
(In xmgrace, I can set the ticks on x or y axis drawn on "Normal side", "Opposite side" or "Both side").
0 commentaires
Réponse acceptée
Cris LaPierre
le 1 Nov 2021
See this answer. You can find a list of the properties here: https://www.mathworks.com/help/matlab/ref/matlab.graphics.axis.axes-properties.html
x = linspace(0.0, 12.0, 21);
J0 = besselj(0, x);
figure;
plot( x, J0, 'ro-' );
h = gca;
yax = h.YAxis; % xax = get(ax,'XAxis');
set(yax,'TickDirection','out')
box 'off'
3 commentaires
Cris LaPierre
le 2 Nov 2021
Not that I am aware of (see this link). A work around may be to use the xline and yline functions to complete the box.
x = linspace(0.0, 12.0, 21);
J0 = besselj(0, x);
figure;
plot( x, J0, 'ro-' );
h = gca;
yax = h.YAxis; % xax = get(ax,'XAxis');
set(yax,'TickDirection','out')
box 'off'
xline(max(h.XAxis.Limits))
yline(max(h.YAxis.Limits))
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Graphics Object Properties dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!