How can I set the histogram width?
4 次查看(过去 30 天)
显示 更早的评论
I would like to set the histogram width in hist(), can anyone help? Thanks
0 个评论
采纳的回答
Wayne King
2012-10-16
编辑:Wayne King
2012-10-16
It sounds like what you want to do is return the counts and bin centers from hist(). In other words, do not plot with hist(), rather user bar() to plot. The third input argument to bar() is the bar width.
[N,X] = hist(randn(1000,1));
bar(X,N,0.5)
% the input 0.5 controls the bar width, it defaults to 0.8
2 个评论
Ashim
2014-2-5
I have a question on the answer. i don't think we can set the width if we use the option in bar graph to use 'histc'. i want to end up in a histogram grouped together, with white background and a width of 0.3 but i can get them all at a time. Although this worked, but cannot adjust the width of the bar columns.
if true
% code
hist(WS,bins,'w');
h = findobj(gca, 'Type', 'patch');
set(h, 'FaceColor', 'w');
end
更多回答(4 个)
Wayne King
2012-10-13
If by histogram width, you mean the width of the bins, then you can do that by specifying the number of bins you use as an input argument; this is documented.
Or use histc() and specify the edges as a vector input.
0 个评论
Wayne King
2012-10-13
编辑:Wayne King
2012-10-13
You can simply modify the width of the plot
hist(randn(1000,1))
ax = gca;
get(ax,'position')
Now you'll see a vector with 4 elements. The 4 elements are
[left bottom width height]
so add to the width value. You'll probably want to reduce the left value as well to keep the histogram "centered"
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Histograms 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!