2013-07-04 243 views
2

我想繪製直方圖圖上的標準偏差和均值,如下所示。在直方圖上繪製直線

enter image description here

這裏是我的代碼:

  filename = 'C:\Users\unique.xlsx'; 
     %removed duplicate entries from the file 

      columnB = xlsread(filename,'B:B'); 



      edges = unique(columnB) 



     n_elements =histc(columnB, edges)/numel(columnB); 

      bar(edges,n_elements,'BarWidth',4) 

      meanB=mean(columnB) % expectation 
      stdB=std(columnB) 

      figure(2) 
      hold on 
      ylim=get(gca,'ylim') 
      line([meanB meanB], ylim,'g') 
       hold on 
      line ([meanB+stdB meanB+stdB NaN meanB-stdB meanB-stdB] , [ylim NaN ylim],'r') 

,但它給了我下面的錯誤:

??? Error using ==> line 
     String argument is an unknown option. 

    Error in ==> read at 23 
    line([meanB meanB], ylim,'g') 

回答

4

使用

line([meanB meanB], ylim, 'Color','g'); 

,而不是

line([meanB meanB], ylim,'g'); 
+0

謝謝你的工作,但有一個問題,我想用水平線顯示標準偏差,但我得到了兩條垂直線。如何獲得水平線,如上圖所示。 – Xara