5

I have a set of points, which are spread over a wide geographical area. I need to be able to create a set of polygons which best represent the clustered points.

In parts, some points may simply lie on their own, but in the main they are grouped, but not linked.

I have effectively created a grid of, lets say, the north western hemisphere and in each grid, have created a point with an arbitrary value. For all values of zero, I have deleted the points, leaving the points with non zero values in them. I now need to turn these points into polygons and am struggling a little...

Using ArcGIS and python, I thought about clustering the points, then 'convex hulling' them, but am struggling through not really knowing ArcGIS that well; how do I cluster?

thanks in advance for any help.

PolyGeo
  • 65,136
  • 29
  • 109
  • 338
Hairy
  • 4,843
  • 1
  • 26
  • 45
  • Would k-means clustering suffice?, http://en.wikipedia.org/wiki/K-means_clustering – Andy W Mar 16 '11 at 12:45
  • 1
    The same question (but without the ArcGIS emphasis) was discussed at http://gis.stackexchange.com/q/6323/664 . Also see http://gis.stackexchange.com/q/6787/664 for a closely related question. – whuber Mar 16 '11 at 14:38

3 Answers3

2

There could certainly be better ways to do this, but one way I can think of is to use Thiessen Polygons in Analysis Tools>Proximity toolbox. If I understand correctly, use your point feature with the arbitrary value as input to the Thiessen tool and you will end up with a set of polygons containing all of your data points. Each data point will lie in the a polygon making it geographically closer to the arbitrary value that created that polygon than to any other point.

badkins
  • 600
  • 7
  • 11
  • I have looked at, actually created them, but I want to have a layer of polygons and the physical separation (white space) between them. – Hairy Mar 16 '11 at 14:29
  • I am not thinking I need to query a point, buffer it, and see what points it comes up with, add them to a collection, then buffer them, to see what new points they come up with, creating a record of individual polygons by point. – Hairy Mar 16 '11 at 14:30
  • @Hairy I realize @badkins did not answer the question you have in your mind, but it is a reasonable response to the question you actually asked: "to create a set of polygons which best represent the clustered points." Perhaps you could elaborate on what you mean by "best represent." – whuber Mar 16 '11 at 14:40
  • I thought I responded resonably? – Hairy Mar 17 '11 at 13:17
2

To solve this, I made a recursive function which, effectively, stored cordinates of polygon/Polyline/point data by flood filling the raster based on > 0 values held there.

Hairy
  • 4,843
  • 1
  • 26
  • 45
1

There is a tool on the Geoprocessing Resource Center by Bruce Harold called the Concave Hull Estimator that may implement what you want (concave hulls):

Derives a polygon feature class that estimates the concave hull, or footprint, of an input point feature layer.

PolyGeo
  • 65,136
  • 29
  • 109
  • 338
Jason Scheirer
  • 18,002
  • 2
  • 53
  • 72
  • What I mean, is effectively shrink wrapping a set o fpoints into a polygon? Does that make sense? – Hairy Mar 17 '11 at 13:18