I have 50m X 200m polygon which has several small polygons inside. I would like to define how scattered small polygons inside a big polygon. I was wondering if there is a tool which can calculate some index based on the distribution of polygons across a big polygon. For example, if polygons are gathered it would give index 0 and if they are scattered well index would be 1. Is there any tool that I can use? ArcGIS or QGIS would be good.


ArcGIS's Spatial Analyst toolset has

I don't see any tool in QGIS that definitely does the same thing. Here are a few things that look like they might do something relevant.

  • The SAGA Spatial point pattern analysis tool provides "a simple indication of the spatial distribution of points." This tool has a tutorial here. The centroids tool will convert your polygons to points so you can run the spatial point pattern analysis tool.

  • QGIS also has various cluster analysis tools. Most of them just divide points up into clusters without providing any measure of "clustered-ness" (ie spatial homo/heterogeneity).

  • The Visualist plugin has the tag spatial autocorrelation map.

  • Per user30184's comment, you could try to implement the spatial homogeneity measures (Ripley's K and L functions) explained in this Wikipedia article. Ripley's K function is explained in more detail in this article. Here are a few tips/suggestions:

    • As above, convert the small polygons to points.
    • Use the distance matrix tool to calculate the distance between each pair of points (this will provide the dij values).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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