X Y scatter data Color Contour of Frequency Distribution spatially

I have X Y scatter data ranging from -125km to +125km in both X and Y.
In 5 by 5 km box I want to find number of points, divide it by total number of points in the entire grid(250km*250km box) and get some number Z and assign relevant color to that box pertaining to the achieved value Z.
Is there any way doing it?

 Accepted Answer

3 Comments

I understand this link. I am sorry for being naive. Please help Sir.
However I am at a loss to understand how to get the color and the axes must remain similar to units of X and Y and not frequency. frequency must be in color.
Caution: the below will fail if you have any data at X = +125 or greater or Y = +125 or greater. If you have data right at both boundaries then you need extra bins. If your data can be +125 exactly but cannot be -125 exactly then in the below change the 1 + floor() to be 0 + ceil()
binmin = -125; binmax = 125; binwidth = 5;
xbin = 1 + floor((X(:) - binmin) / binwidth);
ybin = 1 + floor((Y(:) - binmin) / binwidth);
nbins = ceil((binmax - binmin) / binwidth);
counts = accumarray([xbin, ybin], 1, [nbins, nbins]);
Z = counts ./ numel(counts);
coords = [binmin, binmin + (nbins-1)*binwidth];
image(coords, coords, Z);
colormap(hot)

Sign in to comment.

More Answers (0)

Asked:

on 3 Feb 2016

Commented:

on 3 Feb 2016

Community Treasure Hunt

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

Start Hunting!