2D Histogram Calculation

Quick computation of two-dimensional histogram of bivariate data
10,5K Downloads
Aktualisiert 5. Okt 2011

Lizenz anzeigen

function histmat = hist2(x, y, xedges, yedges)

Extract 2D histogram data containing the number of events of [x , y] pairs that fall in each bin of the grid defined by xedges and yedges. The edges are vectors with monotonically non-decreasing values.

The code is optimized no loop inside, it can be useful in the case of large dataset.

EXAMPLE

events = 1000000;
x1 = sqrt(0.05)*randn(events,1)-0.5; x2 = sqrt(0.05)*randn(events,1)+0.5;
y1 = sqrt(0.05)*randn(events,1)+0.5; y2 = sqrt(0.05)*randn(events,1)-0.5;
x= [x1;x2]; y = [y1;y2];

For linearly spaced edges:
xedges = linspace(-1,1,64); yedges = linspace(-1,1,64);
histmat = hist2(x, y, xedges, yedges);
figure; pcolor(xedges,yedges,histmat'); colorbar ; axis square tight;

For nonlinearly spaced edges:
xedges_ = logspace(0,log10(3),64)-2; yedges_ = linspace(-1,1,64);
histmat_ = hist2(x, y, xedges_, yedges_);
figure; pcolor(xedges_,yedges_,histmat_'); colorbar ; axis square tight;

Zitieren als

Laszlo Balkay (2024). 2D Histogram Calculation (https://www.mathworks.com/matlabcentral/fileexchange/9896-2d-histogram-calculation), MATLAB Central File Exchange. Abgerufen .

Kompatibilität der MATLAB-Version
Erstellt mit R13SP1
Kompatibel mit allen Versionen
Plattform-Kompatibilität
Windows macOS Linux
Kategorien
Mehr zu Histograms finden Sie in Help Center und MATLAB Answers

Community Treasure Hunt

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

Start Hunting!
Version Veröffentlicht Versionshinweise
1.1.0.0

I fixed the bugs reported previously.

1.0.0.0

The two tails of the distribution was mixed up. Thanks for Nicolas Loeff and Nedialko Krouchev revealing the error.