【Matlab】坐标轴的几个设置(不定期更新)

[复制链接]
1. 坐标轴位置的设置; M& g4 f# M4 D1 @% h9 O) X7 b, I5 N
set(gca,'XAxisLocation','top')       %  x轴显示在上方# y( ?  f, E, t

  d# O2 _- w$ V5 s: hset(gca,'YAxisLocation','left/right')
) g1 s( a# m& z3 Aset(gca,'ydir','reverse')   %坐标轴翻转7 `# g; D' p# u- c1 c

# j, j* X8 [4 _; R5 ^; R- qtext(1:5,3010*ones(1,5),{'201203','201304','201405','201507','201607'},'HorizontalAlignment','right'...
+ k6 M# {& Y( }+ m         ,'rotation',35,'fontname','calibri','fontwei','bold','fontsize',18)    % 设置x轴显示斜度, O: g/ n8 w% d% v/ N5 d7 _( G2 Q6 `3 o/ ^
set(gca,'DataAspectRatio',[1 1 1]) % 设置相同的x,y轴比例刻度
9 Z( E) u( a5 ~# w" n
5 m. m# [8 X$ p* R! Z. r
) `# E; v" p' f/ x' f% Y2. colorbar单位的标注. l$ r# a% }# k% z  K; C
hbar=colorbar;
$ k- g5 k; R3 {, p! X- j5 q) B" hylabel(hbar,'(cm/s)','rotation',0)   % 水平显示" N1 T; L! A- a; X6 S( ^, O; A$ W9 c

* W+ w# X0 K. ^! ?
4 l  k+ A7 ~3 H  R7 j4 s* J
3.在字母上方加横线以及希腊字母的添加方法
8 V9 J2 u# ^" u* A2 s3 S9 Rtext(2,90,['$overline U$ =' num2str(roundn(U_,-2))],'interpreter','latex','fontwei','demi','fontsi',16)
. R# z' K+ _# Z2 [text(2,80,'nu  =10^-^2','fontwei','demi','fontsi',16)% S( x& M+ x# i5 A- x; X) y

, F8 o, ^. i, R2 B* o2 ?
4.调换x、y轴的位置
; S3 q, a0 w7 R& V可以直接plot(y,x)
1 I2 {9 O" h8 f4 Y& b7 |也可以plot(x,y)之后,view([90 90])
. x7 R  W& Z  }  D+ E* q
* x9 s0 g( f1 q8 B- [# ~  u9 P0 D
, y* R. a7 d" [# ~6 `5.title位置的调整
4 [9 J/ {2 {8 ntitle('y=x','position',[2 3],'fontsi',16)
2 J8 n8 d( z$ d8 l- D1 m  P( E+ o; u+ @4 d: Z3 ~# ?6 W% ]
& j, M+ Q9 ], C1 G
6.x轴上下进行分别标注(如果有两个变量对应x轴,可以把两个变量分别标注到上下轴)  u. z9 O9 f# R3 i! y
plot(x,y)
8 |# B8 L6 {1 }+ p- X- `3 \
* |8 u7 ^9 W9 ?0 S/ Q
itv_x=2;     %---根据实际情况来定# [7 r7 D# v% N" a8 W0 i0 _( [, E
ax_xtick_low=x(1):itv_x:x(end);, t4 u' e4 t( O% k! t1 G. a( n, \
' ]1 t( f9 T2 |8 t! Y% J7 r
set(gca,'xtick',ax_xtick_low,'xticklabel',num2str(roundn(ax_xtick_low',0)));
  b: o/ p( r0 j& }6 j; f( `0 K

4 u$ M; N3 I7 {9 Y0 b. P8 Jitv_x1=roundn((x1(end)-x1(1))/length(ax_xtick_low),-1);         %---保留有效位数视情况而定
, s  f  \1 i8 n, ~1 Q8 t/ i' L0 bax_xtick_up=x1(1):itv_x1:x1(end);# a0 H% O. W1 q+ a& F7 n
xtick_loc=get(gca,'xtick');
- l6 f! p% N  ]+ i- s& atext(xtick_loc-5,80*ones(1,length(xtick_loc)),num2str(roundn(ax_xtick_up',-1)),'fontwei','demi','fontsi',14)/ M4 s! j3 V" Q  s
效果如下图:
7 b/ H  C: [* l5 Z' p/ e; S

6 W% N& Z* v4 \( c7 X: B# a                               
登录/注册后可看大图

7 Q0 k6 J: v8 y4 t5 W8 \6 T
  i. P, B$ G. j2 k

; N# [  F" W/ p; Z7.如何将x轴和y轴对调+ O  T& B+ W2 z, v* l
view(-90,90)- ^; F# Z/ z+ M( O' H) \

9 ?- o, c7 R9 m& F6 J4 e; P- j; v1 T+ w* S6 w+ ^
8.坐标轴ticklength的设置
( t9 _( i4 r& d0 _4 T4 v* U# {set(gca,'xticklabel',sprintf('%03.4f|',get(gca,'xtick')));%style 3  有效位数
( O+ R# [1 ?" k9 M5 {, H
- d4 ~0 F6 c) l- S: Cset(gca,'xminortick','on');%style 5 小刻度打开0 |2 r: J0 t& P" B
set(gca,'ticklength',[0.05 0.025]);%style 6  刻度长度
* q; A6 x; u& a+ Tset(gca,'tickdir','out');%style 7  刻度放到外围+ {0 f  ~. S! |: L

6 F: r3 T) F% R7 x% Z
( h2 Z( r' ]- t

3 O6 T# E  W- E  \: X4 I9.坐标轴属性设置& T. B0 w8 z+ o0 @

: |7 P6 b# V! O1 D# m0 Qh1=axes('position',[0.7 0.11 0.1 0.815]);    % 设置坐标轴显示位置
! q3 }! }. x5 [- D" qset(h1,'color','none')                    %设置坐标轴背景色为透明色
3 _' B0 x9 y2 k/ X4 @6 m! ]set(gca,'xaxislocation','top','box','on')    %设置x轴在上部显示
. r6 O+ C/ Y7 R9 ^. Sset(gca,'ycolor','none')            %设置y轴颜色为透明色
, H$ F8 I6 U. I; R0 Q! o) A
$ _" S7 F; R. x- o7 f$ I, V# A
6 S$ n2 P: U* B  Z
                    ' g+ `6 d6 a! \( E

2 {1 O$ Z( V2 R9 Z                                        转载本文请联系原作者获取授权,同时请注明本文来自叶瑞杰科学网博客。
回复

举报 使用道具

相关帖子

全部回帖
暂无回帖,快来参与回复吧
懒得打字?点击右侧快捷回复 【吾爱海洋论坛发文有奖】
您需要登录后才可以回帖 登录 | 立即注册
黄金品质
活跃在2021-12-8
快速回复 返回顶部 返回列表