I have two datasets, one of polygons and the other of points, both spread across the United States. Both have decimal degree coordinates in WGS 1984. I want to determine the distance from each polygon to the three nearest points in km. My initial approach was to use the Generate Nearest Table tool but because the inputs are in lat/long degrees, that is how the outputs are given.

This is a very similar question to one asked previously: Calculate distance in km to nearest points (given in lat/long) using ArcGIS Desktop and/or R? The difference is point to polygon vs. point to point. So I don't know how the code given in the answers would work. I'm not too familiar with R either so any desktop based solution would be more straightforward for me.

The Generate Nearest Table seems perfect for this it just doesn't work because of the lat/long coordinates I'm starting with. Should I reproject the datasets into something that would allow distance calculation in km?

  • "Should I reproject the datasets into something that would allow distance calculation in km?" Yep! That's the solution.
    – Dan C
    Jun 1, 2016 at 19:19

1 Answer 1


Reprojecting the data sounds like a great start. Make sure you use a system that covers the entire United States. The commonly used Universal Transverse Mercator system divides the planet up into 60 zones and you'll get some major distortion when projecting data that falls into different zones (which you should if your points lay across the US).

As for the distance calculation, a near table is definitely a way to do it. I just used an alternative method the other day though, so I figured I may as well share. This method probably isn't as fast/efficient but you don't need any additional licenses to use it, which the Near tool does.

What you want to do is a spatial join, right click your polygon layer in the Table of Contents, choose "Joins and Relates".

In the drop-down menu, select "Join data from another layer based on spatial location" From there, choose your points layer as they layer to join to. Then click the second radio button: "Each point will be given all the attributes of the..."

Finally, set the output destination and name of your new file. After it's finished running open up the attribute table and there should be a distance column with the distances to each point. You could then sort the column to find the 3 nearest points.

Certainly not the most efficient way to do it, but for people like me that don't have the licenses required to use the Near tool, it gets the job done.

  • Okay, so reprojecting is the way to go, but what projection to use? The study area I'm talking about is 16 states in the central US so it includes 4 different UTM zones. Would reprojecting one state at a time be the best way to go? Is there a single projection which would give me coordinates in meters that could cover 16 states across the central US without much distortion?
    – Neil
    Jun 2, 2016 at 19:42
  • Unfortunately I don't work with data from the U.S. myself but from the quick reading I've done it seems like Albers equal-area conic projection is the typical choice for mapping the lower 48 states. en.wikipedia.org/wiki/Albers_projection
    – zippy
    Jun 3, 2016 at 12:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.