垂直errorbar很容易实现,水平errorbar也经常用到,但网上很多方法都很复杂,在这里介绍一种相对简单的方法:
$ A( J/ i) A7 F/ s# t
0 k0 p! I; ^$ }) }实例:1 D$ [7 w) c0 I) B
方法1:# }1 r3 }% ?6 K3 V( T4 M$ G
figure;* L6 c& `0 i5 a% {
err=data_std*ones(size(depth,2));
; n1 h" W1 R4 O9 ?$ H errorbar(depth,data_av,err,'-r','linewidth',2) %先画垂直方向的errorbar
3 b6 M( `' s2 F+ e! d4 ]7 L* O, S6 K hold on;, M; ?) x$ g3 c' |
plot(depth,data_av,'k-','linewidth',2)9 b* v- c5 n7 F+ l. s
view(-90,90) %变换图像视角
& V) ]8 [$ y' @+ \2 K set(gca,'xdir','reverse','ydir','reverse','linewidth',2,'fontsize',15) %调转坐标轴4 u! }( u! C3 P1 u1 y
xlim([0 max(depth)+100]), O3 P) l5 g7 p$ F7 E* `
grid on;' A9 M9 D0 f8 f
上述方法仅适用于matlab2014a之前的版本,在2017a版本不适用;
- Q3 X; l& U5 j2 @+ W+ r7 B3 \6 l4 x! T% j0 Z5 v
, ]. x: x. d3 j2 w6 N8 _方法2:
* t9 J2 k) b* s' X& I( j* }$ p利用子程序herrorbar
/ Y. z! `& O# L) U$ s+ X+ W6 w 0 e: b* r$ O, p0 r
www.52ocean.cn
4 |$ S; I4 U5 E9 _: d$ x( `6 C调用方法:
/ m0 }8 T0 V7 S* M; Z o% Aclose all;figure ) g5 T3 P& O5 D' b2 L# g
hold on;
+ G6 n' T6 X C# S. p: b ] plot(U_mean,depth,'r-o','linewidth',2)
I: s5 S& Z! x/ r6 O7 D5 S err_U=U_std; $ G1 ^4 U( M5 V6 w/ y) O6 l* _
h=herrorbar(U_mean,depth,err_U,'r-'); 9 v) P' p9 ]: W# g i; c1 l) G
set(h,'linewidth',2)
5 ]6 w5 U, y2 ^
: E. V) i7 _% G- c4 z/ X# I6 l8 c9 W3 A' y
S# r3 F) t% B6 N+ O" q9 h
/ T; F8 a. M& M; F 转载本文请联系原作者获取授权,同时请注明本文来自叶瑞杰科学网博客。 |