收藏本站 劰载中...网站公告 | 吾爱海洋论坛交流QQ群:835383472

【MATLAB】如何画带errorbar的直方图

[复制链接]
(1)画竖直的errorbar2 Z; T) }! D' M3 i
例子:/ N! {1 ]/ M5 w! D, ~
close all;figure;' p% `! X# n' m0 J: ~
    h=bar(volume_month_mean./1e6);       %--volume_month_mean 为12×2的矩阵) J, r+ f: r/ R- R8 T
    set(h,'BarWidth',0.9);% w7 s( a8 q* u0 M. k$ q
    hold on;
* c" I; W3 I( w; V9 K( O( A    set(h(1),'facecolor',[139 35 35]./255)    %--设置bar的颜色2 n2 X; ~. g% |: L4 e; O, P
    set(h(2),'facecolor','k')
6 D- U+ G; y4 |: b0 M0 w$ ^9 L: `, e0 ~/ B# }

  u; J8 M* Z% Q9 x9 ]2 b. i1 b. f    ngroups = size(volume_month_mean,1);( G1 |" D- I) M. H
    nbars = size(volume_month_mean,2);
% l* Q9 @# b" l% i" l) K, L    groupwidth =min(0.8, nbars/(nbars+1.5));
( F8 L: x+ V* Y# o) t4 l0 R7 w, H
3 w+ `, k( r$ v( o' v8 W& }
/ _; l: d" X  Y6 V& V# z7 h! ~  f    hold on;
& ]0 a" |, ~" ^7 R0 B; M    for i = 1:nbars              %--画errorbar: h2 b0 P' v6 O' e9 g' P$ r
        x = (1:ngroups) - groupwidth/2 + (2*i-1) * groupwidth / (2*nbars);- n" O0 G* h+ _. c* d
        errorbar(x,volume_month_mean(:,i)/1e6,volume_month_std(:,i)/1e6,'o','color',[.5 .5 .5],'linewidth',2);
5 S/ [' t/ v( Z" s8 r6 ^) n    end
; s! W6 Z# n- Z& I: _( ~; Z# C   
( E) U0 B. K# u3 }0 M& A* |    for n=1:126 X: `( M+ Q) E+ `& z
        if n<=9
1 e& t" e( O2 \  W* n            time_lab{n,1}=['0' num2str(n)];
5 E& j& [# F, s* X: m        else
8 s, C, @: ~" d            time_lab{n,1}=num2str(n);
0 P9 I# b- \/ f" V, b' Y5 k4 c2 y        end
/ K/ L, D# e6 j4 P+ Q    end
6 O4 J$ E, R  |0 y/ u8 P7 dset(gca,'XTickLabel',time_lab,'fontsize',14,'linewidth',2)
- ~# m% v% d. j: V  Z  Y; y1 B    ylim([-0.5 2.5]): o' {8 a5 N% a! F5 j
    xlim([0 13])
* e  s9 \3 q  c0 U6 v0 a7 W& J7 ^    set(gca,'ytick',-0.5:0.5:2.5)
8 l, q5 i. Z$ A- F   2 g; L4 C) k% |. R- n: m3 s
7 T' a8 @' m( x6 V8 @, g

' H; k3 \! M" \( j2 K) x(2)画水平errorbar
) ]2 v6 f; j( x( T0 b/ c例子:9 j# `% u* L! z
close all;figure;
2 _2 C1 k: R4 c# L! P    h=bar(volume_mean./1e6);           %--volume_mean是4*2的矩阵; K: k( S4 y/ @. s) [2 Z3 R
    set(h,'BarWidth',0.9);
+ e+ B! c! H8 G4 ?    hold on;" m+ g* Y0 a7 {1 Z, l& Y3 b; y* S# h
    set(h(1),'facecolor',[139 35 35]./255)8 W+ |/ |" A! v2 i% S
    set(h(2),'facecolor','k')( Y" ^1 K8 O3 K' ~! L2 z8 z

" f/ J; f# P. G
! G, f, @( w1 R! N7 P3 W    ngroups = size(volume_mean,1);
& w% D$ \" j1 i: _5 K    nbars = size(volume_mean,2);
7 X" I4 M' m# K6 z2 v+ R" g" \. b    groupwidth =min(0.8, nbars/(nbars+1.5));* q) U6 O* Z: G/ V

7 c- u1 r: d: ?- m0 b1 D
, Y  }7 U& {' q5 }+ A3 Z: `2 j4 A    hold on;
( H% _2 {2 _" e! X6 q; I    for i = 1:nbars
$ c; ]5 M  Q+ o- y4 ?, B        x = (1:ngroups) - groupwidth/2 + (2*i-1) * groupwidth / (2*nbars);& \; ^: H9 P7 L9 _! h% C, M
        errorbar(x,volume_mean(:,i)/1e6,volume_std(:,i)/1e6,'o','color',[.5 .5 .5],'linewidth',2);
2 M! v( N7 h$ }; T5 r2 e: X( S    end
% f  y' E7 |( |' U: t2 |$ Y( s1 u6 H4 C* H- O$ @" {  p
$ ~% l) m& \( U
    view(-90,90)
0 P8 D' b3 T1 |4 o8 h, [/ u/ ]! G    set(gca,'xdir','reverse','ydir','reverse','XTickLabel',{'Winter','Spring','Summer','Autumn'},'fontsize',14,'linewidth',2)
/ v" c8 C: v( P4 g7 P. N" x    ylim([-0.5 2.5])
) ^% F# Y  P3 q% P6 i% B' ^    set(gca,'ytick',-0.5:0.5:2.5)! O. a+ D# l( p+ @* O- T% X" j2 ?
    ye_xylabel(gca,' ','Volume[Sv]')
& f- Z% a+ k5 A0 w7 V    legend('A','B','location','NorthEast')
+ L( p- V( r6 E   ) r# E, |* }, M! ~
8 c1 l- F' V$ C5 a
0 [" V' C4 a& v
                    + ?1 `4 i" o4 i! A

+ F; `$ u" ^, B6 v, Q# F                                        转载本文请联系原作者获取授权,同时请注明本文来自叶瑞杰科学网博客。
回复

举报 使用道具

相关帖子

全部回帖
暂无回帖,快来参与回复吧
懒得打字?点击右侧快捷回复 【吾爱海洋论坛发文有奖】
您需要登录后才可以回帖 登录 | 立即注册
黄金品质
活跃在2021-12-8
快速回复 返回顶部 返回列表