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

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

[复制链接]
(1)画竖直的errorbar! {. F; h0 Q+ u! L  q) X1 d
例子:: r; o: B8 }. \" m0 u# h
close all;figure;+ j, @3 b  h1 p9 s% ]) ~" F
    h=bar(volume_month_mean./1e6);       %--volume_month_mean 为12×2的矩阵( I/ r5 ~4 ~) Q& u) Y
    set(h,'BarWidth',0.9);3 Z/ T0 D" g; G0 T* u$ u& W
    hold on;
1 D( v) M% ^$ h/ E    set(h(1),'facecolor',[139 35 35]./255)    %--设置bar的颜色* y: t% p+ B: ?  Q9 V/ J- R
    set(h(2),'facecolor','k')) z0 a& Z5 t+ M- E$ ^' B
7 C' u+ u3 w+ x8 s
- ?7 M0 ]+ ?5 t8 \0 l) O
    ngroups = size(volume_month_mean,1);
( [% f/ q7 b# h  A0 N+ R1 d0 n    nbars = size(volume_month_mean,2);' `  Y; U9 D# C0 G
    groupwidth =min(0.8, nbars/(nbars+1.5));5 d3 w7 D: O* b) M6 j+ L
1 k! B: v% ?; e" a; Y" G

. [6 ]2 I- u. y* ~  t7 k( n    hold on;
" w" F4 }% b4 F2 t; v" |    for i = 1:nbars              %--画errorbar
0 k, z: Y4 e8 L- G1 n# R  \9 F) Z        x = (1:ngroups) - groupwidth/2 + (2*i-1) * groupwidth / (2*nbars);. I0 o; Y; w8 u1 _; X
        errorbar(x,volume_month_mean(:,i)/1e6,volume_month_std(:,i)/1e6,'o','color',[.5 .5 .5],'linewidth',2);
( |, i; r; m# M) R5 m3 Q    end% R, l6 ?$ O" E1 g
   
8 a% \% y3 A1 P4 V6 {1 u% e    for n=1:126 L0 N6 Q% ?& k
        if n<=9
6 H% F8 F) G: D3 d# ?( S' r            time_lab{n,1}=['0' num2str(n)];" z+ x# M; w* m' W$ A0 |# a) y
        else
) }; b9 O  d, L: d            time_lab{n,1}=num2str(n);1 t& D$ w+ Y# e+ W7 u; ?7 g" N8 T
        end
% V: P6 c9 w9 ?% H# m    end/ B4 N6 ]/ E. ]# X
set(gca,'XTickLabel',time_lab,'fontsize',14,'linewidth',2)( F% m) y5 t) m& Q5 O
    ylim([-0.5 2.5])
: r$ u, j* f, t% N: B+ Y0 f    xlim([0 13])! l4 I# Q6 @% A# q$ _' |
    set(gca,'ytick',-0.5:0.5:2.5)
) K9 P* D, ?* ]% s5 l   
9 I2 H$ n+ J* z9 W: d" C( m& i& M, l
9 g  |5 O9 X; e! Y! a
(2)画水平errorbar
0 O" @  j8 B: p3 l/ z4 [3 u例子:, [, Y' h7 f' d( ^( Y
close all;figure;
! P' f, ^$ `. N- y    h=bar(volume_mean./1e6);           %--volume_mean是4*2的矩阵5 J# I  P% M# r- A! W  u' ^$ K
    set(h,'BarWidth',0.9);* j, s) U2 D3 B) Q$ @) f
    hold on;1 W. B# j& I+ `
    set(h(1),'facecolor',[139 35 35]./255)! W3 @0 S) w4 s6 S6 w1 s' j
    set(h(2),'facecolor','k')
' {. u0 L0 M1 T0 e; B$ N0 d; A; N* A: Y. [2 @  p* \; Z

8 {8 e- D8 O7 X    ngroups = size(volume_mean,1);
4 `( g! o( f+ p; l- H    nbars = size(volume_mean,2);
! [! u9 @2 Q9 v" I8 \" k" \- Z( y    groupwidth =min(0.8, nbars/(nbars+1.5));6 ^9 w5 h3 g1 @4 V& H* i9 C

. ^8 E5 D: \" a0 Y1 M
$ Q7 I) s# P& U# g' x% X: p    hold on;) {) K$ o. L# _0 P( h& J
    for i = 1:nbars
  V' p5 [* u# @* F3 g        x = (1:ngroups) - groupwidth/2 + (2*i-1) * groupwidth / (2*nbars);+ j+ }- R2 O/ ~0 F+ g1 ]
        errorbar(x,volume_mean(:,i)/1e6,volume_std(:,i)/1e6,'o','color',[.5 .5 .5],'linewidth',2);
( C& i' t% g, t0 o    end
  b% O+ _2 l/ e1 J! @+ T6 |9 |0 y7 z4 E5 b5 \/ C' B
6 J( ~! C8 K. x3 p* d
    view(-90,90)1 T% j4 T) L( T2 h5 A/ f8 F
    set(gca,'xdir','reverse','ydir','reverse','XTickLabel',{'Winter','Spring','Summer','Autumn'},'fontsize',14,'linewidth',2)) w) _. I8 d' v/ N& i& L) L
    ylim([-0.5 2.5])
! A  [" }  k7 l    set(gca,'ytick',-0.5:0.5:2.5)
1 v: A9 I9 x% }/ u1 ?. c    ye_xylabel(gca,' ','Volume[Sv]')/ c2 \( w3 C7 l: P. l, Q
    legend('A','B','location','NorthEast')" k% J9 q- z+ Y( v1 C
   , W0 e$ C! p/ d& Q

- g. x8 E/ T6 `& h; `
: M  N; z3 A% [6 V  R, a                    
" L# H) L2 L/ A( X2 n7 o! _7 k6 J) J( y- L# U
                                        转载本文请联系原作者获取授权,同时请注明本文来自叶瑞杰科学网博客。
回复

举报 使用道具

相关帖子

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