How an I manipulate top and bottom x axes individually?

84 ビュー (過去 30 日間)
Rod Letchford
Rod Letchford 2020 年 8 月 30 日
回答済み: Rod Letchford 2020 年 8 月 31 日
I want to control the x axis top and bottom individually / separately.
Specifically I want to point the bottom x axis ticks out and the top x axis ticks in ( and point left y axis out and right y axis in).
  2 件のコメント
Rod Letchford
Rod Letchford 2020 年 8 月 30 日
Currently using R2020a Student.
dpb
dpb 2020 年 8 月 30 日
The 'TickDirection' property is global for the X- and Y- axis objects; there's insufficient granularity of properties to modify one but not the other.
You could make two axes, and set one 'in' and one 'out', but then both would show anyway...
Don't see any way to do this other than to physically draw ticks where wanted if it's that important to go to the trouble.

サインインしてコメントする。

採用された回答

J. Alex Lee
J. Alex Lee 2020 年 8 月 30 日
Actually, dpb's suggestion of 2 axes should work as long as you don't turn "box on", and you may need to sync their positions if you do things like add axis labels, etc.
fig = figure;
ax(1) = axes(fig,'Color','none');
ax(2) = axes(fig,'Color','none');
ax(2).YAxisLocation = 'right';
ax(2).XAxisLocation = 'top';
ax(2).XAxis.TickDirection = 'out'
ax(1).YAxis.TickDirection = 'out'
  1 件のコメント
dpb
dpb 2020 年 8 月 30 日
" 2 axes should work as long as you don't turn "box on"
Ah-so! Indeed. Didn't think about box leaving off the opposite side ticks...good catch.

サインインしてコメントする。

その他の回答 (1 件)

Rod Letchford
Rod Letchford 2020 年 8 月 31 日
Alex,
This works really well, thanks. My slight adjustment:
fig = figure;
ax(1) = axes(fig,'Color','none');
ax(2) = axes(fig,'Color','none');
ax(1).XAxisLocation = 'bottom';
ax(2).XAxisLocation = 'top';
ax(1).YAxisLocation = 'left';
ax(2).YAxisLocation = 'right';
ax(1).XAxis.TickDirection = 'out'; % Bottom
ax(2).XAxis.TickDirection = 'in'; % Top
ax(1).YAxis.TickDirection = 'out'; % Left
ax(2).YAxis.TickDirection = 'in'; % Right
The last and third last lines are redundant since by default the ticks are 'in', but I put them there so its easy to change.

カテゴリ

Help Center および File ExchangeGrid Lines, Tick Values, and Labels についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by