geo-registry

Voronoi Polygons

One polygon per point, covering the area closer to that point than to any other.

Pitfall. The outer polygons are cut to an extent that each engine chooses differently (the points' extent, a buffer around it, or a given box).
Pitfall. Distances in a geographic CRS are measured in degrees, which distorts the polygons.
About this operation
Also called Thiessen polygons, Create Thiessen Polygons, proximity polygons, Voronoi diagram
Group vector/proximity
Checks crs.measure, geometry.valid
Pitfalls 2 listed above
Columbus tool Not stated
Notes Not stated
Status active
Broader Not stated
Narrower Not stated
Related

Parameters

Not stated

Inputs and outputs

Direction Name Type Geometry Note
Input layer vector point Not stated
Output output vector polygon Not stated

In each engine

Engine Tool Parameters Differences
geopandas geopandas.GeoSeries.voronoi_polygons Not stated
  • Called on a GeoSeries of points; extend_to sets the extent to cut the outer polygons to.
grass v.voronoi
  • layer → input
  • output → output
  • The outer polygons are cut to the computational region.
qgis native:voronoipolygons
  • layer → INPUT
  • output → OUTPUT
  • BUFFER enlarges the points' extent by a percentage before cutting the outer polygons.
sf sf::st_voronoi
  • layer → x
  • Takes one geometry: combine the points first (st_union or st_combine); envelope sets the extent.
terra terra::voronoi
  • layer → x
  • bnd gives a boundary polygon to cut the result to.
turf-js turf.voronoi
  • layer → points
  • options.bbox gives the extent (default the whole world: -180, -85, 180, 85).
  • Turf works on GeoJSON in longitude/latitude (WGS 84); data in another CRS must be reprojected first.
whiteboxtools VoronoiDiagram
  • layer → input
  • output → output
None noted