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

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

[复制链接]
(1)画竖直的errorbar
" h& o* J. O* ]9 P/ v例子:5 w1 t- U6 {! P( P$ @3 M
close all;figure;/ i5 w" S  O( k) r" u' ^
    h=bar(volume_month_mean./1e6);       %--volume_month_mean 为12×2的矩阵, N$ c' |% l5 ]' b5 [
    set(h,'BarWidth',0.9);
9 X; E- R: W' @# z: D/ n    hold on;, h- B5 u" K$ W# J& r: k
    set(h(1),'facecolor',[139 35 35]./255)    %--设置bar的颜色
1 H* \" t0 U  x: H    set(h(2),'facecolor','k')# p) ?) t0 g  u7 x
& p) o: P6 s* Q, Q+ A4 Z9 D

6 u! h& a2 s2 }8 ~( w9 I    ngroups = size(volume_month_mean,1);
  t8 K  {5 s" F6 n* {. j    nbars = size(volume_month_mean,2);* ?2 u2 o( _: E2 f- N% s
    groupwidth =min(0.8, nbars/(nbars+1.5));
$ S, I- s6 U  d) \- d1 O  \, }( {' _/ t& d' ]1 S

* q3 c- S5 E* T6 h  L2 Z    hold on;$ S1 G6 S5 D/ s
    for i = 1:nbars              %--画errorbar
* U3 ~+ E* E+ T( u8 ?' t        x = (1:ngroups) - groupwidth/2 + (2*i-1) * groupwidth / (2*nbars);
% ^; l( q% M% l$ o# e* j. p' \0 x        errorbar(x,volume_month_mean(:,i)/1e6,volume_month_std(:,i)/1e6,'o','color',[.5 .5 .5],'linewidth',2);
+ A" x5 Y, q7 J& u    end$ o2 b# J: x- i* m2 i/ Y. t) Z
   
  w1 [4 z( s4 |7 P& c( g5 Z: n    for n=1:12
% j9 q; a2 F/ Q# s0 ~3 b' o        if n<=9
, X8 h$ p7 J& e" @% ^/ V# C. D5 \            time_lab{n,1}=['0' num2str(n)];% N7 x" ^7 L8 s" X
        else
5 w( Y1 m( u/ T            time_lab{n,1}=num2str(n);5 B& a; q; |  j( c; J
        end+ ^+ y- Q$ S: G, G
    end  T1 r7 N* |# P  X
set(gca,'XTickLabel',time_lab,'fontsize',14,'linewidth',2)
8 i2 Y3 A/ i$ Z  M    ylim([-0.5 2.5])
) f* [- B: z" r, j4 f2 Q$ {0 Z    xlim([0 13])
3 `" z: u0 x/ n# k( h    set(gca,'ytick',-0.5:0.5:2.5)
/ Y5 J7 [1 x' [, ]6 K7 ?( |   
5 e) @8 D6 C  y& P3 P. O
. c  F) k" ]9 H$ K8 x4 ]: q, O- H4 }+ i: O3 a1 K6 u
(2)画水平errorbar
7 G$ W9 _7 M) ^( b" L例子:
+ R6 q" p5 B& D8 u/ cclose all;figure;/ d  @% S/ o, s8 F; \; b
    h=bar(volume_mean./1e6);           %--volume_mean是4*2的矩阵
# \8 O# Z7 t/ O9 m" d. O    set(h,'BarWidth',0.9);
9 M& i( G( n2 O; j+ H( z    hold on;1 r8 m5 J$ S3 u( r4 V1 Y
    set(h(1),'facecolor',[139 35 35]./255)
. z: R) f" J1 t8 B" q    set(h(2),'facecolor','k')
8 v( `" e  X) b& v8 K3 W9 t( U) G, ^& y3 J. ]' e( P( o

( {! r* a3 ^0 f! {: W7 x  n% S& i    ngroups = size(volume_mean,1);
% j5 E$ g  T5 P* \    nbars = size(volume_mean,2);
; m6 J& ~3 m: C) e9 z    groupwidth =min(0.8, nbars/(nbars+1.5));
, e0 T3 ]7 i8 ]- P) y* [. J, g. F- G; F) U7 f& F" x& z/ n
2 [" [, A, E: [2 _4 _
    hold on;8 [* r% f$ X; |- ~; D
    for i = 1:nbars
5 @9 l4 ^- M2 x) g) s$ j  F( [        x = (1:ngroups) - groupwidth/2 + (2*i-1) * groupwidth / (2*nbars);+ |: R$ Y8 ?/ P" j# ?
        errorbar(x,volume_mean(:,i)/1e6,volume_std(:,i)/1e6,'o','color',[.5 .5 .5],'linewidth',2);
) V, B  B% T& m8 x' K    end
% C4 x8 h' e8 A$ T4 _6 \' Z, Q2 H# X& a# \7 ]6 C5 N

/ D7 Q) S1 d* \, U+ O2 i    view(-90,90)
8 E/ _) R, G- \3 T    set(gca,'xdir','reverse','ydir','reverse','XTickLabel',{'Winter','Spring','Summer','Autumn'},'fontsize',14,'linewidth',2)
4 j* f5 v7 J1 k0 M$ A    ylim([-0.5 2.5])& P, ~# ^9 P' q/ g* k8 d4 a1 B. S) n
    set(gca,'ytick',-0.5:0.5:2.5)$ _( M, u. j4 ^0 U
    ye_xylabel(gca,' ','Volume[Sv]')4 w( i# |/ {% f0 D( u" ?
    legend('A','B','location','NorthEast')* d/ i8 Q0 I. P( T3 _
   0 a7 S$ C( f. E- H- _
4 k0 T* j3 E' {- \* F! }
* r+ @) y5 T6 O, y+ b& X  S
                    2 c: o! `. F9 ?1 w, h) h! P) N
. Q) h" ]3 K1 a; ?& A$ u
                                        转载本文请联系原作者获取授权,同时请注明本文来自叶瑞杰科学网博客。
回复

举报 使用道具

相关帖子

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