How can I normalize a histogram (dividing by the maximum number of observations in a bin, so that the histogram maximum = 1).
36 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Ebtesam Farid
il 27 Giu 2021
Commentato: Ebtesam Farid
il 27 Giu 2021
Hello everyone,
I need to normalize a histogram, so that the histogram maximum is equal to 1. I want to divide by the maximum No. of values in each bin.
I tried to normalize using cumcount but it doesn't give me the graph I want although it gives me the limit of histogram between 0, and 1.
I need to plot a graph like this
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/666775/image.png)
any suggestions??
Thanks
Ebtesam
0 Commenti
Risposta accettata
Image Analyst
il 27 Giu 2021
Just divide by the max
counts = histcounts(data);
counts = counts / max(counts);
Seems so obvious - am I missing something?
3 Commenti
Image Analyst
il 27 Giu 2021
What did you try? You forgot to attach it. My code does not change the x values. It only changes the y values (bin heights, counts). How did you create the red and black curves? Usually histograms are bar charts and neither of those is. It looks like the black line is some kind of actual data and the red line is a log-normal, or rayleigh fit to the black data.
Più risposte (1)
Image Analyst
il 27 Giu 2021
I think you need to use kstest(), kstest2(), or lillietest() to determine if your samples are normally distributed. Of course take the log of them first if you want to see if the log of your values are normally distributed.
Vedere anche
Categorie
Scopri di più su Histograms in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!