Skip to content

Instantly share code, notes, and snippets.

@timlinux
Last active March 24, 2026 17:16
Show Gist options
  • Select an option

  • Save timlinux/1a9055c459c02ff9fe4e92c1bfda23a4 to your computer and use it in GitHub Desktop.

Select an option

Save timlinux/1a9055c459c02ff9fe4e92c1bfda23a4 to your computer and use it in GitHub Desktop.
Natural Earth presented as Equal Earth

Methodology: World Population GeoJSON

Data Sources

  1. Boundaries: QGIS World GeoJSON - simplified country boundaries with ISO 3166-1 alpha-2 codes
  2. Population: World Bank Open Data API - indicator SP.POP.TOTL (Population, total)

Process

  1. Fetch both datasets concurrently via async HTTP requests
  2. Join population data to boundaries using ISO 3166-1 alpha-2 country codes (iso_a2 ↔ World Bank country.id)
  3. Enrich each feature with three new attributes:
    • population - total population count
    • population_year - data reference year (2024)
    • population_source - "World Bank (SP.POP.TOTL)"
  4. Reproject geometries from WGS84 to Equal Earth projection, then rescale coordinates back to -180/180, -90/90 bounds for visualization compatibility

Output Files

  • qgis-world-population-wgs84.geojson - Original WGS84 coordinates
  • qgis-world-population-equal-earth.geojson - Equal Earth visual projection (coordinates in pseudo-WGS84 space)

Coverage

  • 216 of 240 features matched with population data
  • 24 territories lack World Bank data (Antarctica, small dependencies, disputed areas)

Notes

This dataset is meant for use on naive platforms like Business Intelligence dashboards that can display geojson, but have no concept ofcoordinate reference systems and tend to present WGS84/Geographic projections as a factual account of the world. This promotes the misguided idea that e.g. USA is a big, important country nearly the size of the continent of Africa when in reality it barely fills a small part if Africa.

Read more at https://equal-earth.com/.

Pasted image

Made with 💗 by Kartoza

Display the source blob
Display the rendered blob
Raw
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment