matlab利用bar函数画直方图,参考文献[1]是matlab官方提供的help文档。里面提供了bar函数的基本用法,但是没有说明如何在同一张图中,为每个bar设置不同的颜色。
例子代码:
mydata=rand(1,5);
figure(1)
hold on
for i = 1:length(mydata)
h=bar(i,mydata(i));
if mydata(i) < 0.2
set(h,'FaceColor','k');
elseif mydata(i) < 0.6
set(h,'FaceColor','b');
else
set(h,'FaceColor','r');
end
end
set(gca,'xtick',[1 2 3 4 5]); % 故意为了只是显示5个刻度值,下方的设置才有效
set(gca,'xticklabel',{'直方图1','直方图2','直方图3','直方图4','直方图5'});
hold off
参考文献: