(1)画竖直的errorbar
6 F1 g& O1 S+ o6 O2 X# F例子: P, ~9 u3 ]2 Z7 q: g$ B- C0 z/ u
close all;figure;) j- s+ A1 P8 g1 l1 ?* G( \
h=bar(volume_month_mean./1e6); %--volume_month_mean 为12×2的矩阵. T- z9 u* l7 u3 u' X( x9 P: ]
set(h,'BarWidth',0.9);
5 q, ^8 `! X2 U* [ hold on;
1 _1 T9 F- d6 V/ i2 _ set(h(1),'facecolor',[139 35 35]./255) %--设置bar的颜色( p% I5 M9 r& b% e3 N2 X
set(h(2),'facecolor','k')! b% s( k- [4 S2 `& Z: T
5 ^. ~" Q& z c& C
4 @5 D2 j. {- a8 B9 c5 i2 }# U
ngroups = size(volume_month_mean,1);3 V/ W: M) x z( S, h7 e$ v/ B9 v8 g
nbars = size(volume_month_mean,2);2 `4 c* W) t# A
groupwidth =min(0.8, nbars/(nbars+1.5));1 ~, b G, j+ H1 D7 p% F! v! f
5 X% a' C e. J# ?- c9 D
" ?6 j" k9 e" X4 N
hold on;
( c1 A1 C5 I- n8 A* ^+ { for i = 1:nbars %--画errorbar4 }2 E* S" n) u; | Z% o
x = (1:ngroups) - groupwidth/2 + (2*i-1) * groupwidth / (2*nbars);/ }8 L5 I e n0 E! \. n& s& l
errorbar(x,volume_month_mean(:,i)/1e6,volume_month_std(:,i)/1e6,'o','color',[.5 .5 .5],'linewidth',2);
$ ~( R; J& z; p end; ^# {" m, u7 Z7 g
8 @- m/ [6 ^ N& `! N
for n=1:12
6 n' b/ j3 B Q! A7 Y p if n<=9
3 H! v) n1 `* b. P! s$ V0 q6 d/ ]7 z time_lab{n,1}=[&#39;0&#39; num2str(n)];' _- _, u. w* X7 `) x6 D0 M
else' D+ W" f5 x2 E6 d% N. ^( [1 }
time_lab{n,1}=num2str(n);
- V6 C. Z+ {& l" n) I% J end
" f/ p+ ~/ M L" _7 K end- i! _& p' ~! p' z
set(gca,&#39;XTickLabel&#39;,time_lab,&#39;fontsize&#39;,14,&#39;linewidth&#39;,2)3 u8 g9 |0 T# |3 @
ylim([-0.5 2.5])
& `& K' L8 H5 u6 d& } xlim([0 13])
3 X5 E/ E7 F* h) \! A" D set(gca,&#39;ytick&#39;,-0.5:0.5:2.5)
0 |; n' T( x7 {' d9 A 6 u4 M: q5 ]; h
+ T |) } @$ s1 t
, D7 j5 B+ A- N% m5 N. U3 G
(2)画水平errorbar
( i/ I9 p# M" }% `3 k例子:
" g7 _1 S+ {7 yclose all;figure;
r9 ~- y6 G8 a# t i8 e% [ h=bar(volume_mean./1e6); %--volume_mean是4*2的矩阵9 Z& d5 T% p }
set(h,&#39;BarWidth&#39;,0.9);. j3 N4 o7 J, s4 y6 c
hold on;9 ~, }5 z" Z# x5 r6 H
set(h(1),&#39;facecolor&#39;,[139 35 35]./255)
' I Z2 n$ y! s3 Q- [ set(h(2),&#39;facecolor&#39;,&#39;k&#39;): j( p# r7 v" z+ e, `9 N4 t% u
( v+ ~) S% Q( `& J
6 b% K. [1 C, K* g9 C ngroups = size(volume_mean,1); V# m, a; L" F+ }* W6 |
nbars = size(volume_mean,2);
, U' Q. P' z) p( J Y5 A: N4 ? groupwidth =min(0.8, nbars/(nbars+1.5));
8 H2 B: P% v; O2 D5 w
. \: l3 \+ `# e7 D# D4 J7 G. X: g- i5 q7 w, w" U5 A5 @
hold on;
7 I6 M1 d3 W9 T6 |" k" G( X for i = 1:nbars' H9 A6 v G& F' }7 |
x = (1:ngroups) - groupwidth/2 + (2*i-1) * groupwidth / (2*nbars);
% `1 q# G' Z# Z% G2 N3 b errorbar(x,volume_mean(:,i)/1e6,volume_std(:,i)/1e6,&#39;o&#39;,&#39;color&#39;,[.5 .5 .5],&#39;linewidth&#39;,2);" \' x5 y, ^% `* N
end
& A1 }6 K6 s, r1 ~4 ~: m/ F S, w
; M/ z- p, R; v: i& ?* O/ X& N+ m1 R; l8 w
view(-90,90)
- v) L. j( |0 B+ Z) l) 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)
5 D- {0 W; f- y2 Q) s1 h. {/ h ylim([-0.5 2.5])
' @& D- |% F) K# G5 ~; U set(gca,&#39;ytick&#39;,-0.5:0.5:2.5)
- k" O& U: |# R) q1 q# ^ ye_xylabel(gca,&#39; &#39;,&#39;Volume[Sv]&#39;)
! T8 t$ |, I5 m/ Z8 b5 V legend(&#39;A&#39;,&#39;B&#39;,&#39;location&#39;,&#39;NorthEast&#39;) O: S+ V( q' O1 T
6 s& B6 y& f/ \
; Y$ E) m4 p' p/ V/ R9 [: I4 ]- S* L+ D6 q1 C; o$ a
' W6 Y& a3 ~0 k( q- B n+ H" R F
+ E" I5 p. j$ V2 L1 a( c0 ~ 转载本文请联系原作者获取授权,同时请注明本文来自叶瑞杰科学网博客。 |