[SciPy-user] neighbourhood of randomly scattered points
fred
fredmfp at gmail.com
Thu Aug 30 03:24:26 EDT 2007
Robert Kern a écrit :
>
> Show us your code, if you think there is a problem in it.
I really think there is no problem in my code,
it has been already validated.
My 2D data array is a n=501x501 array.
If I get n points from it, the neighbourhood is uniform,
I think this is a problem for nobody ;-)
In fact, I don't get n points, but far less, say 15000.
If these points were uniformly distributed,
I think I could not see theses structures: theses structures are not an
artifact.
> Looking at images is a
> very poor way to judge randomness;
Yes, but one can see structures.
The question is : why I can see these structures .
Do they have any meaning ?
I was expecting to see no structure at all, in fact.
But may be I'm wrong.
I understand the trick like this : if I get 90 neighbours
in a neighbourhood, the density of points is much higher
than in a neighbourhood where I get only 40 neighbours per points.
So, for me, it is not uniformly distributed.
> intuition isn't very good. I'm trying to
> verify your numbers quantitatively, but without knowing how you implemented the
> circular neighborhood, I can't. If you picked the most dense spot and the least
> dense, then those values appear reasonable.
>
Quite straightforward ;-)
I use something like this :
nbx, nby are the neighbourhood dimensions.
x0, y0 are the points coordinates.
x, y are the neighbourhood points coordinates
For a rectangular neighbourhood, I use
for all (x0,y0) points
for all (x, y) points
if abs(x-x0) <= nbx and abs(y-y0) <= nby
nb0 = nb0 +1
For a circular neighbourhood, I use
for all (x0, y0) points
for all (x, y) points
if ((x-x0)/nbx)**2 + ((y-y0)/nby)**2 <= 1
nb0 = nb0 + 1
BTW, I did not look at your url yet.
Cheers,
--
http://scipy.org/FredericPetit
More information about the SciPy-User
mailing list