垂直errorbar很容易实现,水平errorbar也经常用到,但网上很多方法都很复杂,在这里介绍一种相对简单的方法:7 k t7 v& r6 a
) n2 g" j: B! \' n! x( B) q2 N实例:% ?# O& U" ?1 {9 K- m/ J) R
方法1:
$ j, ^' C0 O, u! w6 Wfigure;, ~9 G* s A- J
err=data_std*ones(size(depth,2));
: b7 w* @! ~4 T errorbar(depth,data_av,err,'-r','linewidth',2) %先画垂直方向的errorbar; e4 b5 Q- p( b! ^: X& T4 w( i
hold on;0 T P' \6 c t. C& Y) N' Q5 p s
plot(depth,data_av,'k-','linewidth',2); c2 F9 G7 j3 W9 m( b
view(-90,90) %变换图像视角3 B8 z, w; z/ ]
set(gca,'xdir','reverse','ydir','reverse','linewidth',2,'fontsize',15) %调转坐标轴+ a1 Q p) e7 _& D: u6 p E
xlim([0 max(depth)+100])
& A0 n( D2 J; X) U grid on;3 z: ~# n. X9 r
上述方法仅适用于matlab2014a之前的版本,在2017a版本不适用;
' E ?+ `* B) M$ s [4 i
1 w7 v; m. p, G/ @& {) x+ n j! ?8 V0 Z1 u6 J$ N
方法2:
8 r: M4 s5 z0 f利用子程序herrorbar
! Y" I) \. b7 j; R/ d + k3 g) v& H; k5 e4 W1 d% ]3 c
www.52ocean.cn
) R" t8 z) @& N) s- p- [/ h调用方法: . G) G1 R: Z1 f0 Q1 X4 w- i
close all;figure 2 U6 Y, h6 _% e: ]+ Z. h0 n$ {
hold on; 1 }+ p; T0 r) }) s# ~
plot(U_mean,depth,'r-o','linewidth',2) ) x6 C/ B1 P1 B
err_U=U_std;
$ Q1 S8 X r0 P2 T7 E6 ? h=herrorbar(U_mean,depth,err_U,'r-'); & s' H) b; s+ a1 Q/ B, {
set(h,'linewidth',2) + u }/ \# Q4 Q
4 l8 q4 P- t/ H$ [4 n- g8 c
* D3 ]$ f. @4 |- N) J/ p- ] 0 @/ s7 ]; F* l# s
/ s) O6 v; _: j7 N: F5 {0 i 转载本文请联系原作者获取授权,同时请注明本文来自叶瑞杰科学网博客。 |