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

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

[复制链接]
(1)画竖直的errorbar
  s9 z4 P: _: Q3 z  c2 N例子:
% p( U0 n3 t8 T! S. j2 X9 A5 ^1 sclose all;figure;
" |& I3 M) H1 |7 f    h=bar(volume_month_mean./1e6);       %--volume_month_mean 为12×2的矩阵& i# f* Z) B, T1 K7 X7 J! T. ^
    set(h,'BarWidth',0.9);
1 E8 S& ]0 z* u9 U    hold on;
# W! h0 B8 v  j9 {# N' U% g# K    set(h(1),'facecolor',[139 35 35]./255)    %--设置bar的颜色& l6 ~$ y2 Y* {8 a
    set(h(2),'facecolor','k')
6 |. t" q  _9 z, \5 l# E; m! t0 [9 u( y
5 a7 P" M; D  ^0 `  E9 a8 F
    ngroups = size(volume_month_mean,1);3 O; X+ I8 K+ n
    nbars = size(volume_month_mean,2);7 I* I) E% l- s
    groupwidth =min(0.8, nbars/(nbars+1.5));
# e9 L1 K' E+ Q9 B* H5 R5 ?( u! [/ L* g  k
* q$ v/ j4 r: d
    hold on;
' v) [2 R: O9 e% F    for i = 1:nbars              %--画errorbar- @# T$ D* Z/ M& h8 U
        x = (1:ngroups) - groupwidth/2 + (2*i-1) * groupwidth / (2*nbars);  ?# N& y) e; y4 F* k0 _& P. r% d
        errorbar(x,volume_month_mean(:,i)/1e6,volume_month_std(:,i)/1e6,'o','color',[.5 .5 .5],'linewidth',2);
0 B1 q& q1 b! A' N, N9 f    end# n4 W% X+ p6 O! X5 d
   
& {2 Q+ u9 h9 M' Q3 {    for n=1:12, D6 G( |9 Y3 o6 }/ b5 X  ]- U* h. q
        if n<=9, N! X" T! ^8 e0 A% T% F
            time_lab{n,1}=['0' num2str(n)];, y5 C: s+ L+ _2 H% `
        else* V/ C$ W+ |0 ]% D
            time_lab{n,1}=num2str(n);3 K8 q7 a" B. p% Y' ^3 U  N
        end
" X- o3 U  y+ B$ w& N    end4 ^2 a9 u" }) s+ y: q7 U
set(gca,'XTickLabel',time_lab,'fontsize',14,'linewidth',2)1 q1 z2 A7 `3 H5 c# X0 g$ e
    ylim([-0.5 2.5])2 j: N9 Y* q2 D* |  P/ X/ i
    xlim([0 13])
6 t6 H9 c  ?* p& }5 \  L: ?$ A8 e    set(gca,'ytick',-0.5:0.5:2.5)" N  S, B: ^" [
   
: j0 X5 I7 n; h7 a# O  |0 u9 d8 M
- e' p, \; ^5 Q, g0 j! ^" k6 T3 E) v/ P  l7 w+ W8 D: K+ Y  ?
(2)画水平errorbar
. a/ ]3 W6 x% A8 S; _. [+ @" _例子:9 _1 l5 {2 L( J. F4 \/ i
close all;figure;
# r, \! ^! u4 {4 c; c    h=bar(volume_mean./1e6);           %--volume_mean是4*2的矩阵
: {4 h, _# Z" s) _$ u0 s# ~    set(h,'BarWidth',0.9);
6 y5 h7 N3 `0 J( I( ^! d    hold on;8 L. `1 \2 `# o1 e& B" s2 @0 R/ ]; ^
    set(h(1),'facecolor',[139 35 35]./255)* O# l- z2 M" S; @
    set(h(2),'facecolor','k')- d- ]' M2 M# @0 v1 ?! j: K) Q3 z
4 [0 Q: T! {- H8 n  w+ ^6 E8 }6 f

' S5 y$ i+ h. r6 J# l3 ^5 }' Y    ngroups = size(volume_mean,1);( L, C% A7 W! s8 t
    nbars = size(volume_mean,2);! f7 v% \- D+ u, C  \+ s  s$ A6 b
    groupwidth =min(0.8, nbars/(nbars+1.5));
4 ?2 N- n$ F8 P0 p4 O! }1 f: a; ^0 Q7 n! u+ j* i$ a

; E- a7 p4 N  B' f2 S    hold on;7 f, r( W/ t$ [. F# R: H
    for i = 1:nbars; x- I9 ~, h& V; p1 O' B4 p1 R
        x = (1:ngroups) - groupwidth/2 + (2*i-1) * groupwidth / (2*nbars);- s2 l  @# M" z( e/ k
        errorbar(x,volume_mean(:,i)/1e6,volume_std(:,i)/1e6,'o','color',[.5 .5 .5],'linewidth',2);
& G( u0 O5 ^" r6 p    end
6 ?# \# R/ H! Z) M( R# ]: K
2 c9 a. N2 h- P2 o
/ k% Q: b  G1 o! o2 n    view(-90,90)
) _- V6 n7 a9 w* k' P    set(gca,'xdir','reverse','ydir','reverse','XTickLabel',{'Winter','Spring','Summer','Autumn'},'fontsize',14,'linewidth',2)0 F8 \' C+ ~  {& V* K4 P& n
    ylim([-0.5 2.5])
$ ~! b: z* R  W4 Q  p* f) L    set(gca,'ytick',-0.5:0.5:2.5)
& m$ T4 K# M1 n6 c; t% t# R    ye_xylabel(gca,' ','Volume[Sv]')
1 b& L$ v+ k1 i. \4 ~+ \! y0 G, M5 z    legend('A','B','location','NorthEast')8 A; Y* i9 o! ~
   % p9 ?* i) e3 Q1 ^  T; m% \

* i3 v: h1 y2 K2 r
. t1 }$ S# A+ ~( f+ ?8 z/ [' r/ Q                    
# `. l+ a; B6 \; e: A4 D" t4 n% {/ [* O2 d
                                        转载本文请联系原作者获取授权,同时请注明本文来自叶瑞杰科学网博客。
回复

举报 使用道具

相关帖子

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