这个小代码用于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);
效果如下: