垂直errorbar很容易实现,水平errorbar也经常用到,但网上很多方法都很复杂,在这里介绍一种相对简单的方法:' k6 m2 T% ?; v1 Y
! @6 ?; \6 e$ s) I实例:& j- k+ T0 J2 i. M3 Y4 h
方法1:
5 m( X* J+ o6 Afigure;8 @3 J3 }, ~/ O( u
err=data_std*ones(size(depth,2)); " V" r- w* O& t( P8 H
errorbar(depth,data_av,err,'-r','linewidth',2) %先画垂直方向的errorbar% M( i& [ q3 e! \ f0 q2 U
hold on;; q/ \5 r0 m1 j' M8 j
plot(depth,data_av,'k-','linewidth',2)
: `, s7 g2 K/ g9 [3 K view(-90,90) %变换图像视角. X- m- e8 h- W! f
set(gca,'xdir','reverse','ydir','reverse','linewidth',2,'fontsize',15) %调转坐标轴
) p( m" k- C8 v r& W, { n xlim([0 max(depth)+100])
$ l ]1 M4 ~7 Y! x2 v6 ^! b grid on;
6 ?& v) f; U& N; b0 m 上述方法仅适用于matlab2014a之前的版本,在2017a版本不适用;
- _ m0 Z% ^ E2 R5 B
1 `7 |7 z: M& s, A5 C
% b/ s+ G/ h: y- K& p( t( @1 p方法2:6 s( T8 ^2 p$ n' t: w$ k. `6 S
利用子程序herrorbar) ~3 L$ p" M0 x2 j
. i5 r( h3 D1 q. W, g www.52ocean.cn2 N3 `8 L& o* V
调用方法:
1 V1 T* R, M1 W! G1 vclose all;figure * L: m8 }5 ^0 y* m& ~
hold on;
3 y$ q3 g$ W7 Z) w plot(U_mean,depth,'r-o','linewidth',2) 7 H" X+ N, ]2 G' l5 n& _; I# u7 \
err_U=U_std; 4 ]* Y% k! x" Y4 v% g' o
h=herrorbar(U_mean,depth,err_U,'r-'); ( ?7 T- L2 Q4 M
set(h,'linewidth',2)
5 ^* V7 @3 ]- @
( x4 f4 ]+ h$ V) ?- j7 ]! a( [# Z; W* D" ?! q1 K! \
6 v# g$ a) U- b C
$ z# {, x, k9 S 转载本文请联系原作者获取授权,同时请注明本文来自叶瑞杰科学网博客。 |