2012-10-01 40 views
6

私は600x24の行列aを持っていますが、MATLABで同じ図の各列のヒストグラムを作成したいのですが、次のコードを使用しましたが、虹の色は、私は次のコードを使用し、MATLAB hist()機能が行列上で動作し、個別に行列の各列を処理複数のヒストグラムをmatlabで異なる色でプロットする

col = hsv(24); 

hold on; 

for m = 1:24 
hist(a(:,m), 50); 
h = findobj(gca,'Type','patch'); 
set(h,'FaceColor', col(m,:),'EdgeColor',col(m,:)); 
alpha(0.3); 
end 

hold off; 

答えて

6

を助けてください。 bar()関数を使用すると、ヒストグラムを自分でプロットし、適切な色を塗りつぶすことができます。したがって、結果を得るには

[h,x] = hist(a,50); % histogram of every column and the bins vector 
bar(x,h);   % plot histograms 

% create a legend 
l = cell(1,24); 
for n=1:24, l{n} = num2str(n), end; 
legend(l); 
関連する問題