
Histogram x axis range
994 views (last 30 days)
Show older comments
I am trying to plot the Histogram for a matrix which contains the values ranging from 0 to 0.1. However I wish to have the X axis values ranging from 0 to 1 with 20 bins (with each of 0.05 value difference). This is for me to show how the overall distribution is still less than 0.1 in the whole range of 0 to 1.
I tried the following code, and however, this does not work as the Histogram always shrinks the X-axis with values less than 0.1 (due to the maximum value in the matrix).
edges = [0 1];
histogram('BinEdges',edges,'BinCounts',20)
histogram( data(:));
Any help is appreciated for me to achieve this goal. Thanks
0 Comments
Accepted Answer
Image Analyst
on 23 Dec 2018
You can do this:
data = 0.1 * rand(1, 1000); % Create sample data.
edges = linspace(0, 1, 21); % Create 20 bins.
% Plot the histogram.
histogram(data, 'BinEdges',edges);
% Fancy up the graph.
grid on;
xlim([0, 1]);
xlabel('Data Value', 'FontSize', 14);
ylabel('Bin Count', 'FontSize', 14);
title('Histogram of Data', 'FontSize', 14);

Of course you will have only 2 bins for your data to fall into, so I don't know if that's what you want.
More Answers (1)
madhan ravi
on 23 Dec 2018
h=histogram('BinEdges',edges,'BinCounts',20)
h.BinLimits=[0 1] % x-axis range
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!