Creating histogram without using built in function
Show older comments
I am trying to create a code that mimics the hist() function but I am running into an issue on the final bin.
Here is what I have:
Pie=sin(2*pi*tt); %array of data p=sin(2*pi*t/T)
L=10; %number of bins
minPie = min(Pie); %min value of array
maxPie = max(Pie); %max value of array
binwidth = (maxPie - minPie)/L; %width of bin
binnum = 1+floor((Pie - minPie) / binwidth); %value of array to a bin
bincounts = accumarray(binnum(:), 1); %amount to each bin
X = minPie + (0:L) * binwidth; %X of histogram
figure (1)
bar(X, bincounts) %my histogram
figure (2)
hist(Pie,10) %matlab histogram
My code returns this figure which has 11 bins at a bin width of 0.2.

Matlab's hist function returns this figure which has 10 bins with a bin width of 0.2.

How can I change my last bin so that the two figures are identical?
1 Comment
David Fariyike
on 28 Jan 2022
Accepted Answer
More Answers (0)
Categories
Find more on Histograms in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
