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

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

[复制链接]
(1)画竖直的errorbar1 n& _! \; q9 }* C3 w
例子:" C) m9 ]# l) B1 H
close all;figure;
. r+ ^1 V  N- s    h=bar(volume_month_mean./1e6);       %--volume_month_mean 为12×2的矩阵3 J1 |' [* i; B
    set(h,'BarWidth',0.9);8 d& I  R4 I' M1 C" i
    hold on;2 P, ~' P/ |8 M! A* _( x
    set(h(1),'facecolor',[139 35 35]./255)    %--设置bar的颜色  L) z1 w. d3 V0 ^9 \/ @" f9 V
    set(h(2),'facecolor','k')
# @- b! j5 |3 N/ H8 _3 m- Q$ o% g3 T4 i
9 ^5 \/ e8 ~' K% {
    ngroups = size(volume_month_mean,1);% ~9 w8 O( r9 f6 N! N
    nbars = size(volume_month_mean,2);6 d/ {+ D: X1 b6 \% K- E+ P
    groupwidth =min(0.8, nbars/(nbars+1.5));) n1 u! d2 g4 J) u5 r. `
2 H5 M2 z# R0 \  a+ G" t; W
6 b" {* w, b3 o/ F% S
    hold on;
* L/ T- [) t1 N0 {0 i8 }+ v. Q" p+ F1 V    for i = 1:nbars              %--画errorbar
3 X* a$ z: L- U% z, Y7 C  ~        x = (1:ngroups) - groupwidth/2 + (2*i-1) * groupwidth / (2*nbars);5 U; w! C; _  v5 P4 y# e
        errorbar(x,volume_month_mean(:,i)/1e6,volume_month_std(:,i)/1e6,'o','color',[.5 .5 .5],'linewidth',2);
5 M0 j/ A; Y9 P. t% L- |    end+ @1 ^$ R& X! }* F2 @
   
# t/ W7 I8 F$ K2 t+ I+ \5 f    for n=1:12
2 \$ l% U" o. O0 _- \% o        if n<=9
* R7 z0 @( s+ A9 I* i: `9 M            time_lab{n,1}=['0' num2str(n)];
% T  V! |- M( u        else
& _3 L) Y$ ~+ i5 v2 b            time_lab{n,1}=num2str(n);% `& J2 F9 i& c
        end& a0 H9 i0 ?0 f; K
    end
! P4 t7 C% K2 z$ x! i' }set(gca,'XTickLabel',time_lab,'fontsize',14,'linewidth',2)2 a2 \" b# ^( n
    ylim([-0.5 2.5])
( L/ j( _; T* {: ~% q    xlim([0 13])0 R& J  t% c5 y; F+ W$ F
    set(gca,'ytick',-0.5:0.5:2.5)) X0 ?1 F7 [) Z
   
! L, ~9 e4 @% s' U" D: ^9 l2 L# R* X4 ?' I( ]. v& {. K

" B6 t% d2 ]3 V8 O1 p7 f(2)画水平errorbar
8 \$ ~; X2 [3 m; i6 r/ S1 u例子:
8 Q5 |( t* j  l0 b8 n8 a2 yclose all;figure;
5 R" }3 B. j. M) @    h=bar(volume_mean./1e6);           %--volume_mean是4*2的矩阵
. m. P- i" X" B3 a1 X; n7 }    set(h,'BarWidth',0.9);: Z; u2 s1 |5 x
    hold on;/ G3 S9 D- a- F" W
    set(h(1),'facecolor',[139 35 35]./255)+ T- s3 _+ _3 m  A' U4 }
    set(h(2),'facecolor','k')
! Z; A5 J, z% C. R" j+ c+ r7 [4 B( p4 k/ S+ z: H, B- R8 x
4 I. y' ~# C2 k; k9 a. h2 N
    ngroups = size(volume_mean,1);: {0 w7 z  u0 e: H6 ^
    nbars = size(volume_mean,2);
; T3 r% r) W7 X1 m# C/ ?    groupwidth =min(0.8, nbars/(nbars+1.5));
$ j, i  p; E8 `& ~
" J7 ]* p" O$ q1 @7 u* u$ ]. ~+ Y& `
    hold on;
' Y- J) t' z' x. E2 M; B1 V2 y9 h    for i = 1:nbars
; P5 ]; P! Y: W. `0 Q        x = (1:ngroups) - groupwidth/2 + (2*i-1) * groupwidth / (2*nbars);
) j8 h: @# j: }0 H) |        errorbar(x,volume_mean(:,i)/1e6,volume_std(:,i)/1e6,'o','color',[.5 .5 .5],'linewidth',2);) k8 u4 ?# @) I2 Q
    end: G4 z) g# E, C( @

& J9 }5 }* z, }6 ?. Z( C
9 F( ~1 C7 Z9 j9 |9 C2 V    view(-90,90)
. A: ^  ?& b5 m3 A    set(gca,'xdir','reverse','ydir','reverse','XTickLabel',{'Winter','Spring','Summer','Autumn'},'fontsize',14,'linewidth',2)
& `; Y; ^7 u" _: f    ylim([-0.5 2.5])& u$ o2 _% y6 }7 {. R1 W
    set(gca,'ytick',-0.5:0.5:2.5)# Z8 V) \0 i6 m
    ye_xylabel(gca,' ','Volume[Sv]')" f" X- |( d0 B
    legend('A','B','location','NorthEast')
- O, ?- P- e" D7 w% e; N2 R   
3 e$ b0 t5 z8 {0 ^. f5 A* B2 O1 \
5 u. U0 I# Q) E/ A5 B# A& [) e. `0 |8 S0 c# d
                    * v8 j; ~6 t" u9 |+ h

- ?0 I% b7 E9 [: A" x2 {3 T7 l                                        转载本文请联系原作者获取授权,同时请注明本文来自叶瑞杰科学网博客。
回复

举报 使用道具

相关帖子

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