How can I find the percentage of the overlap of two histograms in Matlab?

16 vues (au cours des 30 derniers jours)
Zahra
Zahra le 5 Nov 2013
I try to plot two histograms and I need to know quantitavely what is the area and percentage of overlap of these two histograms.
  2 commentaires
Image Analyst
Image Analyst le 5 Nov 2013
Do the bins cover the same ranges? Like they're both 5 units wide and have edges in the same locations?
Filippo
Filippo le 21 Nov 2014
Assuming they do cover the same ranges... can anyone answer this question? I'm looking too!

Connectez-vous pour commenter.

Réponses (1)

Image Analyst
Image Analyst le 21 Nov 2014
I'd put each histogram into one row and take the min and the max.
bothHistograms = [hist1; hist2];
minCounts = min(bothHistograms, [], 1);
maxCounts = max(bothHistograms, [], 1);
Then get the ratio of the min value for each bin to the max value for each bin:
ratios = minCounts ./ maxCounts;
If you want the average percentage coverage over all bins, take the mean over all bins:
meanPercentage = mean(ratios);

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by