I would like to calculate the distances between the closest points of each polygon. I've tried using centroids and both distance matrix and distance to nearest hub, but since I'm relying on centroids, this is associated with some error for my project.

So is it possible to tell QGIS to determine the closest point between each polygon and then calculate it's distance?

QGIS Version: 2.18.18 Project


1 Answer 1


I've also run into this problem before. Assuming that your polygons are uniquely named, it sounds like you simply need to perform a nearest-neighbour process to calculate a "Distance Matrix". The distance matrix will tell you the nearest, 2nd nearest, 3rd nearest, etc. neighbour that each polygon has, as well as the distance between them. No need to rely on centroid distances.

For more information: http://www.qgistutorials.com/en/docs/nearest_neighbor_analysis.html

Also: Ensure that your data is in an appropriate projected CRS, otherwise your values and neighbours will be inaccurate.

  • 1
    It should work perfectly fine on a single layer. I just mean that each polygon should be its own entity. Dissolving them into one large multi-part polygon would actually break the Distance Matrix tool. Commented May 9, 2018 at 14:10

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.