垂直errorbar很容易实现,水平errorbar也经常用到,但网上很多方法都很复杂,在这里介绍一种相对简单的方法:
3 Y. K8 W1 P9 y% S
$ ]6 d( H+ _, W a实例:
; X$ V0 x' |2 [# K# g$ l方法1:
2 `4 y A. ]" O! j+ v) f7 qfigure;
7 y+ j1 ^3 O7 ]5 v5 ?$ `/ u% [ err=data_std*ones(size(depth,2));
/ {* Z. s! e5 z9 Q& X# Q g) Z errorbar(depth,data_av,err,'-r','linewidth',2) %先画垂直方向的errorbar- {& z6 }- b3 O& `
hold on;' h3 }* x( b& y2 u; N3 P' }
plot(depth,data_av,'k-','linewidth',2)6 Q" M5 O# ]6 f4 ~
view(-90,90) %变换图像视角: s& A* G1 A% W& g5 {- K
set(gca,'xdir','reverse','ydir','reverse','linewidth',2,'fontsize',15) %调转坐标轴& O/ L' E4 Y5 U5 p# N) u
xlim([0 max(depth)+100])3 C# R# N/ s3 b& ]! q F" s G
grid on;+ K |" x8 B9 T# u* J' ]5 e, ~8 D
上述方法仅适用于matlab2014a之前的版本,在2017a版本不适用;, e _( p5 [* Q0 D* [
3 c7 K1 {$ T2 B+ H' {# S4 [4 v
5 k1 R1 R" Y7 l
方法2:
0 h' V$ `8 F3 G# o7 b( J利用子程序herrorbar
! q- b' z$ d1 U# M$ T
; q. y k' K4 d6 g0 ?7 C* b2 R www.52ocean.cn
2 M$ G* J1 a$ _/ P调用方法:
) Y: f- C9 |" C2 i m0 ]6 Fclose all;figure
) F7 c" W- c' q0 ^ hold on;
9 Y6 T5 M; y) j" V' H: k plot(U_mean,depth,'r-o','linewidth',2) 9 _* _( R. a( }; {+ e" W) R, Z
err_U=U_std;
: f9 k2 s8 c- e5 O h=herrorbar(U_mean,depth,err_U,'r-'); + K8 Y# J6 e! s+ z% S
set(h,'linewidth',2)
$ D2 x L9 c* _3 a8 n. s& ?- z+ x- `
1 f- U9 K$ X e( l/ u ; J* A% X: _5 |4 k5 [
* D. i( f! j( M8 Q% S1 m
转载本文请联系原作者获取授权,同时请注明本文来自叶瑞杰科学网博客。 |