Borrar filtros
Borrar filtros

X Y scatter data Color Contour of Frequency Distribution spatially

2 visualizaciones (últimos 30 días)
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?

Respuesta aceptada

Walter Roberson
Walter Roberson el 3 de Feb. de 2016
  3 comentarios
Walter Roberson
Walter Roberson el 3 de Feb. de 2016
Editada: Walter Roberson el 3 de Feb. de 2016
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)
Utsav
Utsav el 3 de Feb. de 2016
Thanks a lot Sir, for the reply. It worked for me. Also I found the use of "accumarray' in this link

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Scatter Plots en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by