Skip to main content

Use Cases

IGEO7 is particularly well suited to applications where equal area matters and where hierarchical aggregation is part of the workflow.

Environmental Monitoring

Biodiversity and species distribution modelling requires area-accurate grid cells so that species richness per unit area is comparable across regions. IGEO7's equal-area guarantee means a cell at resolution 9 in Estonia covers the same 1.264 km² as a cell in Brazil.

# Index species observations to IGEO7 resolution 9
gdf_obs = dggrid.cells_for_geo_points(
geodf_points_wgs84=observations,
cell_ids_only=True,
dggs_type="IGEO7",
resolution=9,
)
# Count per cell — directly comparable across the globe
counts = gdf_obs.groupby("name").size()

Land cover and habitat area — aggregate raster data (Sentinel-2, Copernicus Land Cover) into IGEO7 cells for consistent area-weighted statistics. Resolution 14 (~9.8 m) matches Sentinel-2's 10 m native resolution.

Earth Observation Data Cubes

IGEO7 integrates with Xarray-XDGGS for cloud-native analysis of gridded data:

import xarray as xr
import xdggs

ds = xr.open_zarr("s3://my-bucket/sentinel2.zarr")
ds_igeo7 = ds.dggs.assign_igeo7(resolution=14)
monthly_ndvi = ds_igeo7.groupby("time.month").mean()

The uniform cell size makes spatial aggregation and resampling mathematically correct — no area-weighting corrections needed.

Hydrology and Water Resources

Stream networks and catchment delineation benefit from IGEO7's multi-resolution hierarchy. Resolutions 8–10 (~3–1.3 km) match typical hydrological modelling scales; resolution 12 (~68 m) suits fine-scale flow routing.

Because cells are equal area, runoff volumes computed per cell are directly summable up the hierarchy without correction factors.

Urban Analytics and Planning

Resolution 11 (~181 m) and 12 (~68 m) provide natural scales for neighbourhood-level urban analysis — matching typical census block sizes and street-grid granularity. The hexagonal topology (all 6 neighbours equidistant) avoids the directional bias of square grids.

# Generate IGEO7 grid over a city at 181m resolution
city_bbox = shapely.geometry.box(24.5, 59.3, 25.2, 59.6) # Tallinn

grid = dggrid.grid_cell_polygons_for_extent(
dggs_type="IGEO7",
resolution=11,
clip_geom=city_bbox,
output_address_type="Z7_STRING",
)

OGC API DGGS Services

pydggsapi implements the OGC API – DGGS standard with IGEO7 as a supported reference system. This allows IGEO7-indexed data to be served via standardised REST endpoints, consumable by any OGC-compliant client.

Supported backends: Clickhouse (columnar analytics), Zarr (cloud-native arrays), Parquet.

See pydggsapi ecosystem page.

Comparing H3 and IGEO7 for Your Use Case

Use caseH3 sufficient?IGEO7 advantage
Nearest-neighbour lookupMarginal
Density maps (events/km²)BiasedEqual area eliminates bias
Area statistics (land cover)BiasedEqual area eliminates bias
Scientific reproducibilityVaries by locationConsistent everywhere
Very fine resolution (< 1 m)No (max res 15 ~1 m²)Res 18–20 reach centimetres
Cloud-native data cubesLimitedXarray-XDGGS integration
OGC API DGGS compliancePartialpydggsapi native support

Further Reading