Peak "coordinates of a histogram

1 view (last 30 days)
Hi, I want to study the histogram of an array. This array has only one peak, I want to determine the bin related to the peak. I have just tried ksdensity() and then findpeaks() but if I want a good precision the hig number of points of ksdensity makes the process slow. Please could you tell me how to find out the bin related to the peak? A good hint could be to transform the histogram into a vector.

Accepted Answer

Star Strider
Star Strider on 9 Mar 2019
Not at all certain what question you are asking. If you want to know the indices of the data assigned to each bin, see the histcounts (link) documentation on Determine Bin Placement (link).
If you are not using histcounts, consult the appropriate documentation for the function.
  1 Comment
Damiano Capocci
Damiano Capocci on 13 Mar 2019
yes it works, after histcounts I do :
%V is the vector%
[x,y]=max(V)

Sign in to comment.

More Answers (1)

Steven Lord
Steven Lord on 10 Mar 2019
Are you creating the histogram (the graphics object) or binning the data using histcounts?
In the former case. retrieve the BinCounts and BinEdges properties from the histcounts object. Use max to identify the maximum count and its location, and index into the edges vector to identify the edges of that bin.
In the latter case, do the same thing with the first two outputs of histcounts.
  1 Comment
Damiano Capocci
Damiano Capocci on 12 Mar 2019
I create the histogram from an array. However i do not know histcounts.Anyway I will try.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!