Select to view content in your preferred language

Consolidating points in a 50 meter radius

4781
9
10-13-2011 09:52 AM
AndrewLawrence
Emerging Contributor
I am trying to consolidate any points that fall within a fifty meter radius of another plot, combining the data into single point that covers the 50 meter area. Would anyone have any suggestions on how I could do this? Thanks!
0 Kudos
9 Replies
DarrenWiens2
MVP Honored Contributor
Can you expand on your question? Do you want one point in the end, or literally a polygon that covers the 50m area. Also, what happens if there are 3 points in a row, each 30m apart?
0 Kudos
AndrewLawrence
Emerging Contributor
Thanks for your reply! Sorry about the poorly worded question, I'm a little new at GIS, so I'll try and make more sense out of this one... I have a series of aerial survey sites represented by points. Each of the points indicates the number of disease damaged trees counted in a roughly 50 meter radius, although it doesn't end up being exact, so some points are only sepearate by a few meters. These trees contained in the point are going to be put out for contract to be removed. I'd like to try and thin out the number of points that will be on the contract maps by consolidating the data in the points that are close together into a single point that represents all the points that might have been in each 50 meter radius of the original data
0 Kudos
AndrewLawrence
Emerging Contributor
...sorry, guess I didn't really answer the question. I'd still like a series of points, just less of them by consolidating any ones less then fifty meters apart into less points
0 Kudos
DarrenWiens2
MVP Honored Contributor
If your data is fairly simple (like attached), you can use a Spatial Join. Use the tool in the toolbox, not from the ArcMap menu.

Target Features = points at the middle of each cluster
Join Features = count data
Join Operation = JOIN_ONE_TO_ONE
*** Right-click the column that holds your count data, change merge rule to SUM ***
Match Option = Intersect
Search Radius = 50m
0 Kudos
DanLee
by Esri Regular Contributor
Esri Regular Contributor
Using Spatial Join you should be able to associate every point in dataset 1 to a point in dataset1 if within 50m. So some points in dataset1 get the point IDs of dataset2.

To group points of dataset1 by the associated point IDs of dataset2 and then turn each group into a point, you can try the following (requiring ArcInfo license):

1. Use Dissolve tool with the associated Point ID of dataset2 as the Dissolve Field. By default each group of points will become one mpoint feature.
2. Use Feature To Point tool on the mpoint features, using the default CENTROID option. You should have one point for each group of points now.

Is that what you want to achieve?
0 Kudos
NobbirAhmed
Esri Regular Contributor
@ajr.lawrence:

Do you have two separate point feature classes - desired points in one layer and the closer by (to be consolidated) points in another? If yes, then the above solution will work for you.

If they (all points) are in one feature class then you'll need to follow extra steps or a separate path. Let us know.
0 Kudos
markdenil
Frequent Contributor
You could use the Integrate (Data Management) tool.
input your point feature class and set a 50 meter cluster tolerance.

DO IT ON A COPY OF YOUR POINT FILE!
Integrate changes the data in your file!

Integrate snaps the points within the tolerance to a single location: you get little stacks of coincident points.

You can then use Collect Events (Spatial Statistics) to create a single point of the points in each stack. The output will have an ICount item showing the number of points at that location (handy for proportional symbols).

You can use this feature class for one of the two for the Spatial Join Dan suggests above, and the 'integrated' stacks of points for the other.

That should give you what you want....
0 Kudos
DanLee
by Esri Regular Contributor
Esri Regular Contributor
Just a friendly reminder on the Integrate tool:

This tool uses an iterative clustering process which may end up snapping points that are farther away than the specified XY tolerance to a new location. It is intended for use with relatively small tolerances so that the errors are minimal. Using it for spatial clustering over a large distance may give you an inaccurate result. You can use Buffer on the new location points to inspect/verify the result.
0 Kudos
markdenil
Frequent Contributor
Very true. Any automated process like integration has inherent dangers. If, as is suggeted above, one has a cloud of points 30 meters apart, and then set a 50 meter tolerance, the integrated points could land just about anywhere...

Picking an appropriate tolerance may take a few tries, and careful inspection of results.
0 Kudos