垂直errorbar很容易实现,水平errorbar也经常用到,但网上很多方法都很复杂,在这里介绍一种相对简单的方法:
' s% c! \. }: m4 }3 b3 E- y2 [
实例:
8 m" ?5 [% y2 S2 K) `5 t方法1:
7 c7 ?5 S8 F$ Z4 J7 U+ t0 vfigure;
4 {8 N2 D) Q6 G( y1 j! h$ m5 M err=data_std*ones(size(depth,2)); 9 ~. m' L* |- ?1 ^. I: o' i0 p: z0 I( E
errorbar(depth,data_av,err,'-r','linewidth',2) %先画垂直方向的errorbar/ H0 I0 i9 R* x0 [+ u8 ^2 g P/ G
hold on;6 M, K& U4 \1 W: @( [/ K' E
plot(depth,data_av,'k-','linewidth',2)
5 t, ?7 I# Q" n! h- E view(-90,90) %变换图像视角
" P. }5 R. J z9 N- u8 Y! D set(gca,'xdir','reverse','ydir','reverse','linewidth',2,'fontsize',15) %调转坐标轴
" E# n) J7 {' M9 c xlim([0 max(depth)+100])
) Q8 e; a0 Y0 |3 r! ?% o grid on;- b. j* q& Y1 L& R! I+ E
上述方法仅适用于matlab2014a之前的版本,在2017a版本不适用;" f# R) E, s7 U8 d; N; ]
& a0 _. d v0 P E
. g, r8 c( m" T7 S, G5 f方法2:* y# T6 C7 y& k7 |9 X: u
利用子程序herrorbar0 G4 U+ }; G5 G; _6 c; L
! _- @6 y9 n9 t5 b www.52ocean.cn+ T4 c0 e; f; q1 x6 O
调用方法: / L5 V3 B$ t( D; j7 }, r
close all;figure " V2 w1 ?+ l9 w- m
hold on;
+ v1 V6 a. i* D+ l+ q/ H$ ~. J9 h plot(U_mean,depth,'r-o','linewidth',2)
, _$ S3 G: H. N) y0 F. c* z err_U=U_std;
. g( ~ n! y% p( H) b; f h=herrorbar(U_mean,depth,err_U,'r-'); 2 l2 N. W. G S$ F4 K8 m
set(h,'linewidth',2)
7 P/ R `) d* x; h; a/ [3 h# W# i; @# v! {/ k2 F1 V
6 ^& c8 L) f. i: Q
+ ? C3 B5 ?, e z
8 O& g& x3 w Y. s/ G
转载本文请联系原作者获取授权,同时请注明本文来自叶瑞杰科学网博客。 |