How to set axis in more details?

1 view (last 30 days)
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").

Accepted Answer

Cris LaPierre
Cris LaPierre on 1 Nov 2021
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 Comments
Cris LaPierre
Cris LaPierre on 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))
qilin guo
qilin guo on 2 Nov 2021
Dear Cris LaPierre, thank you very much! It looks very well. Unfortunately, I am using MATLAB R2018a, while xline and yline function are Introduced in R2018b. But I know how to work work around this quetion now. Thank you again.

Sign in to comment.

More Answers (0)

Categories

Find more on Graphics Object Properties in Help Center and File Exchange

Products


Release

R2018a

Community Treasure Hunt

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

Start Hunting!