2013-04-28 104 views
0

我有一個向量(newdata),由4100行和一列組成。準確地說,這些元素是頻譜的計數。我想要的是用matlab重現光譜。這就是爲什麼我創建了一個新的載體在MatLab中繪製直方圖

channels=[1:size(newdata,1)]; 

我試圖通過鍵入

hist(channels,newdata) 

繪製頻譜(使用x軸channelnewdata爲權重),但我得到了一個錯誤

??? Error using ==> histc 
Edges vector must be monotonically non-decreasing. 

Error in ==> hist at 86 
    nn = histc(y,[-inf bins],1); 

如何繪製所需的光譜?

+1

4100點繪圖,條形圖將只是看起來像一個堅實的區域(除非你的顯示器是巨大的!)......爲什麼不直接使用'plot'? – wakjah 2013-04-28 09:49:41

+0

這不能稱爲加權直方圖...... – 2013-04-28 09:51:05

+0

@wakjah:其實它真的有效!輸出在這裏找到http://img833.imageshack.us/img833/7551/42042502.jpg – Thanos 2013-04-28 10:02:53

回答

2

嘗試使用bar命令

bar(channels, newData); 
+0

它的工作!非常感謝你!!! – Thanos 2013-05-04 10:42:19

+0

@Thanos - 太棒了! – Shai 2013-05-04 18:07:52