简单实用的matlab柱状图显示比例及计数

这个小代码用于matlab柱状图显示比例及数值,

 

函数如下:

function myhist(x)
% myhist Codeby SimonLiang
% Email:idignew@126.com
% 用于显示柱状图比例及具体数值

h=histogram(x);

hold on;

%显示柱状图数值
hBin=h.BinEdges(1:end-1)+h.BinWidth/2;
text(hBin,h.Values+max(h.Values)/25,num2cell(h.Values));

%计算百分比
Hpercent=round(h.Values/sum(h.Values)*100);

%加入百分号
Hpercent2=num2cell(Hpercent);
for i=1: length(Hpercent)
    Hpercent2(i)={[num2str(Hpercent(i)),'%']};
end
text(hBin,h.Values+max(h.Values)/15,Hpercent2);%显示百分比

%显示标题
title(['TotalCounts=',num2str(sum(h.Values))]);

hold off
end


 

调用范例:

x=randi([1,100],1,50);
myhist(x);

 

效果如下:

 

posted @ 2017-03-28 10:25  SimenLiang  阅读(13300)  评论(0编辑  收藏  举报