垂直errorbar很容易实现,水平errorbar也经常用到,但网上很多方法都很复杂,在这里介绍一种相对简单的方法:9 X. n) C- k& X' _/ F
3 z# |% r" k' V) ^8 \实例:
% V; g$ \, [+ R8 ]9 Q$ b7 }方法1:9 z: x: m9 D! A' |6 I& u
figure;
6 x3 u/ H/ g0 H! s/ R$ ` err=data_std*ones(size(depth,2)); * \% s# f7 Y5 b4 `( e
errorbar(depth,data_av,err,'-r','linewidth',2) %先画垂直方向的errorbar0 V r3 W0 S6 ~: Y$ S
hold on;
6 S: Y$ l$ T, O' G1 i7 l plot(depth,data_av,'k-','linewidth',2)
. R" w1 n! d2 a& w2 y0 h view(-90,90) %变换图像视角& c; V7 A+ Q9 f5 v% B
set(gca,'xdir','reverse','ydir','reverse','linewidth',2,'fontsize',15) %调转坐标轴
# ~: C- |( e5 V5 q' ^3 p! o xlim([0 max(depth)+100])/ ~* v) a7 @. ?% \: W. I7 W! K* F" G
grid on;
& i5 ^" P$ T; i+ W; U# X _7 c 上述方法仅适用于matlab2014a之前的版本,在2017a版本不适用;
+ `& F5 N! j! m2 a @3 z3 ?: z- X1 J
& \" h# o, D/ g! A8 e4 l: ]' ?5 J( |( r4 z
方法2:; R' B8 g- n( q1 }6 {( T
利用子程序herrorbar
# S$ B3 U5 W7 Y# H/ w$ P% @% k
M: _" B7 J, _4 d# ] www.52ocean.cn
# r6 p e/ z6 r+ ]) J0 F4 K @调用方法: ! [9 O# k( r, x
close all;figure / E+ g; Y+ |5 V! |% F& A: h
hold on;
4 V6 B+ _$ w* h6 U plot(U_mean,depth,'r-o','linewidth',2)
2 d- G9 z4 y. B1 T err_U=U_std;
- K% k! e; e; H9 x+ K3 h2 s) q0 f h=herrorbar(U_mean,depth,err_U,'r-');
. F, T# H* \ S" p set(h,'linewidth',2)
5 q, m6 N; f- n" V
0 U b* S" C) E5 t2 g1 A7 Q2 A
+ u) E1 K( O( B: Q6 {8 g! R0 ~7 ] ; b7 N* x! i$ y+ p$ w z ~; S2 |
+ ^$ G% l1 {3 `' ~9 u' @ 转载本文请联系原作者获取授权,同时请注明本文来自叶瑞杰科学网博客。 |