(1)画竖直的errorbar
$ c1 V- q' k w: A* H/ A5 D. l例子:: L! _7 b+ K5 k8 d @
close all;figure;
. R& j6 z3 B, u5 c5 ^/ L h=bar(volume_month_mean./1e6); %--volume_month_mean 为12×2的矩阵" h& I4 G3 v" x7 A
set(h,'BarWidth',0.9);
# z+ A* a$ H& \ hold on;6 q- j6 V/ n# g8 p) P `
set(h(1),'facecolor',[139 35 35]./255) %--设置bar的颜色
* e+ g% Z0 C3 } set(h(2),'facecolor','k')
' h9 n) g5 B! U% S Y0 ?# M+ m+ u3 z
7 J8 Z* j8 |$ A, e n2 x9 T' B ^) K
ngroups = size(volume_month_mean,1);
5 a$ O+ u! M6 a+ x nbars = size(volume_month_mean,2);
: \0 V( }6 x1 f) [" x3 G6 Q5 j7 a groupwidth =min(0.8, nbars/(nbars+1.5));& u. {0 C" G6 i/ a& s
2 W6 c5 \2 h9 z3 J+ H
4 M/ k( }0 c+ \4 ~- _. E
hold on;) A) b8 U! R! Y
for i = 1:nbars %--画errorbar- O" a7 `4 S( b) p
x = (1:ngroups) - groupwidth/2 + (2*i-1) * groupwidth / (2*nbars);/ ]: b( A' A, K/ r# Z0 Y: z% p
errorbar(x,volume_month_mean(:,i)/1e6,volume_month_std(:,i)/1e6,'o','color',[.5 .5 .5],'linewidth',2);3 o5 g7 U2 b6 n' R$ ~; w% t$ p
end
. f/ o( N, Z: L8 G7 T! ^- {2 | + W- d8 P3 s2 s: r2 s* t% i
for n=1:12
; F5 L" k3 A8 K" c7 B7 |. }& f( D if n<=99 S9 |8 g( y0 R' M
time_lab{n,1}=[&#39;0&#39; num2str(n)];: `& v* [' b, I2 g
else) @$ a5 ?1 z( ?) K
time_lab{n,1}=num2str(n);
/ G8 [2 v4 |$ i/ p end) ?3 o% Z% w( h) A* F( k" X
end
3 q* w4 ?6 u5 |! Zset(gca,&#39;XTickLabel&#39;,time_lab,&#39;fontsize&#39;,14,&#39;linewidth&#39;,2)
: U. A; A4 N/ }8 a- S: T- | ylim([-0.5 2.5])
! ~/ t2 j6 d! W xlim([0 13])+ {4 `. U$ J2 M/ \7 k2 s5 o
set(gca,&#39;ytick&#39;,-0.5:0.5:2.5)
j8 V+ g/ t6 B; }: Y
! o g! Q/ ]9 j/ A. C7 J+ N7 k3 s" m c: t% o
4 s* B: A) e9 ^! | f X(2)画水平errorbar) K, t, [3 {* |' z. x7 ]2 |
例子:
1 m4 A. C) b2 e6 Eclose all;figure;
; {% {2 `; b4 A' N h=bar(volume_mean./1e6); %--volume_mean是4*2的矩阵
h4 H+ j4 A2 K7 k0 s* F set(h,&#39;BarWidth&#39;,0.9);
/ W. z1 o! H9 l, W9 Q! Y6 H, h$ H hold on;( ~8 p. D8 [2 W% _! }+ [
set(h(1),&#39;facecolor&#39;,[139 35 35]./255)
6 V( B) q @; {! I3 W, @ set(h(2),&#39;facecolor&#39;,&#39;k&#39;)
- ~ Z% l( v! n$ V6 @# P
! k* m, z4 B/ S" M' c) g2 D* z9 _: R) B' i' W
ngroups = size(volume_mean,1);4 Z8 ]! O' `4 S2 H8 C, ?
nbars = size(volume_mean,2);
# D6 J, ]3 a) B4 n9 [ groupwidth =min(0.8, nbars/(nbars+1.5));
% r' r5 w9 x4 p
' Z/ i3 H" I& N7 W1 T% W: l+ {$ v( ^; f: X( ~+ Q
hold on;" ^' y L5 ?& d# L6 J
for i = 1:nbars
; `4 V! ^! Q3 ~; h5 A7 D- n: b x = (1:ngroups) - groupwidth/2 + (2*i-1) * groupwidth / (2*nbars);) c9 l2 B/ _4 p- I8 t" a8 }
errorbar(x,volume_mean(:,i)/1e6,volume_std(:,i)/1e6,&#39;o&#39;,&#39;color&#39;,[.5 .5 .5],&#39;linewidth&#39;,2);6 l3 p" k V! ?( @) C* k
end+ d5 T* [5 E% r. k
0 H% @/ Q+ B- R5 C+ R" a3 n5 Z' a" t+ b$ t( \
view(-90,90)' B8 ?! s: o! g, @, [4 g3 R A
set(gca,&#39;xdir&#39;,&#39;reverse&#39;,&#39;ydir&#39;,&#39;reverse&#39;,&#39;XTickLabel&#39;,{&#39;Winter&#39;,&#39;Spring&#39;,&#39;Summer&#39;,&#39;Autumn&#39;},&#39;fontsize&#39;,14,&#39;linewidth&#39;,2)
' o/ O. r+ ~$ e ~ ylim([-0.5 2.5])4 o' ]9 @$ [1 X9 L( Q2 ? s
set(gca,&#39;ytick&#39;,-0.5:0.5:2.5)" X: r( w/ p9 `4 {. E* V
ye_xylabel(gca,&#39; &#39;,&#39;Volume[Sv]&#39;)
$ N5 t9 r5 N. G legend(&#39;A&#39;,&#39;B&#39;,&#39;location&#39;,&#39;NorthEast&#39;)
}4 h+ J# g$ `3 [# c- J% p
% r7 s6 U! R0 V- |0 P- d# O5 P1 G( C+ q
4 O" h3 ]% r, G: z1 p
9 d* d) j: G; Z7 E) J9 Q+ A
6 V/ f& ]* @3 A, C' } 转载本文请联系原作者获取授权,同时请注明本文来自叶瑞杰科学网博客。 |