The Long Landing: Globe
1901 ——— 2100
This is a scenario, not a prediction.
The century on one Earth. The climate zones of the world — measured for the 20th century, projected for the 21st — drawn on a globe you can spin and scrub, with cities of the series marked on it. If you want me to dedicate an article to your city, please share and I will see what I can do.
Drag the globe to turn it. Drag the year to move through the century — the zones migrate under your hand. The six milestone buttons are the same stops as The Long Landing. Click a city for its place in the series.
Editorial · September 2026
“Man has lost the capacity to foresee and to forestall.”
— Albert Schweitzer, quoted by Rachel Carson in the dedication of Silent Spring, 1962
This is the second article in what I hope will become a long series of interactive, evolving projects. I plan to dedicate much of my time to this work.
These projects take a great deal of effort. I spend many hours building them, testing them, and thinking about what I want to communicate. I often rethink both the message and the best way to present it.
A late awakening
I began to understand the seriousness of climate change only in May this year.
Before then, I had heard about climate change, but I believed we still had plenty of time. I assumed that humanity, supported by new technology, would eventually solve the problem.
Many people in the technology sector seem to share this belief. Technology can certainly help us understand the crisis and develop useful tools. But technology alone cannot save us. It cannot replace political action, social change, or difficult decisions about how much we consume.
This is one of the central tensions behind this project. I am using technology to explain why technology, by itself, is not enough.
Many of the most effective actions can seem surprisingly ordinary. We need to consume less, make products last longer, travel differently, waste less, and reduce our consumption of meat.
These changes may sound boring. They may also feel uncomfortable, especially to people like me who enjoy travelling, technology, good food, and many of the comforts of modern life.
I am slowly making peace with the changes I need to make.
I will spend and consume less than I did before. I will choose the train instead of flying whenever possible. I will eat less Bauchspeck, my favourite kind of meat. I will keep my 14-year-old car for as long as it can be repaired instead of replacing it simply because it is old and I will most likely forego the purchase of another vehicle. I will cycle and use public transport more often. I will also try to grow some of my own food.
These personal choices will not solve climate change on their own. The crisis is too large and too deeply connected to our energy, food, transport, financial, and political systems.
But personal and systemic change are not opposites. Our individual choices can help us understand what broader change requires. They can also show governments and businesses that people are ready to live differently, if fair and practical alternatives are available.
Grieving a changing world
I am also beginning to mourn the Earth I once knew.
The climate that shaped most of my life is changing. We are entering a period often described as the Anthropocene: a time in which human activity has become a major force shaping the planet.
I explored this idea in my previous article, The Long Landing. What I did not share was the emotional effect this discovery has had on me.
Last week, I travelled by train. During one of my meetings, I looked through a window and saw several trees outside the building.
I suddenly felt deeply sad.
I wondered how those trees would cope with the climate ahead. Rising temperatures, changing rainfall, drought, fires, pests, and extreme weather will affect which trees can grow in different regions. Some places will need to plant different species. In others, maintaining healthy forests may become much more difficult.
I do not know what will happen to those particular trees. But looking at them made the scale of the change feel real.
It also made me think about my own effect on the environment and about what I may need to change or give up—including some of the technology I enjoy.
Technology will not disappear, but our relationship with it may change. Computers, smartphones, data centres, and digital services depend on energy, minerals, factories, transport networks, and global supply chains. If those systems come under greater pressure, producing and replacing electronic devices may become more difficult and expensive.
That is a topic for another article.
Why I am building this
For readers who are just discovering my work, I should explain who I am and why I am doing this.
I am not a climate scientist. I am a tinkerer, a writer, and a curious learner. I enjoy exploring new subjects and working with data. I also enjoy finding ways to make complex information easier to see and understand.
That is the purpose of this project.
The article includes an interactive globe built from public climate and population data. The data-processing work behind it used about 65 gigabytes of source material.
The sources include NASA’s daily climate projections for extreme heat, heatwaves, and hot nights. They also include data from Copernicus for wet-bulb heat and dry periods, WorldClim for long-term heat, rainfall, and aridity, WRI’s Aqueduct for water stress, FAO’s GAEZ for agriculture, NOAA for El Niño and ocean conditions, Köppen climate-zone maps, permafrost data from ESA and AWI, and population estimates from WorldPop.
Where possible, I used one climate model—ACCESS-CM2 under a high-emissions scenario—as the common baseline for the layers I created. This does not mean that every dataset measures the same thing or uses the same method. It means that I tried to align the timeline and climate assumptions so that the visualisations could be compared more consistently.
The result is not a new climate model. It is an interactive data visualisation that brings together information from established public sources.
How AI supported the project
I could not have built this project alone within the time and budget available to me.
I used an AI coding assistant as a development partner. It helped retrieve and process files, turn daily weather data into grids, write scripts for the visual frames, and build the interactive globe.
I also used separate AI-assisted checks to compare calculations with the source files and challenge parts of the method. These checks helped me find problems, but they are not a replacement for independent scientific review.
The important decisions remained mine: which datasets to use, which thresholds to apply, which scenario to show, how to structure the timeline, what to include or remove, which colours to use, and what words to write.
My experience as a software product owner helped me manage this process. Working with AI can be similar to working with a development team. The product owner still needs to define the requirements, question the results, test the work, and decide whether it is ready.
AI can produce errors, even when it is working with real data. Published datasets can also have limits, and my own decisions may be challenged. I therefore cannot promise that the project contains no mistakes.
What I can promise is transparency.
The visualisation is based on published data rather than invented figures. I have tried to make the methods and assumptions visible, and information about the datasets is available at the bottom of the page.
If you want to reproduce the project, examine its methods, or question its assumptions, I welcome that.
An invitation to review the work
Because I am still learning, I would especially welcome feedback from climate scientists, data specialists, researchers, and climate-science enthusiasts.
I am looking for more than praise. I want people to examine the project critically. I want to know where the data may have been misunderstood, where the methods could be improved, and where the visualisation may give the wrong impression.
Constructive criticism will help make the project more accurate and useful.
What I hope to achieve
My goal is to make climate science easier to understand for a broad audience—especially for people in Western countries, where I live and whose lifestyles I know best.
Many people know that climate change is happening but still struggle to understand what it could mean for their homes, food, water, health, work, and communities. Data visualisation can help make those connections clearer.
Over time, I also want to explore solutions.
These solutions must work together. They will need to address energy, transport, agriculture, housing, industry, finance, ecosystems, and the way we measure economic success.
Individual action matters, but it is not enough. Technology matters, but it is not enough either. We need changes to the systems that shape the choices available to us.
I want to encourage people to ask new questions about progress.
Must progress always mean producing, consuming, and earning more? Could we measure it through health, resilience, shared well-being, and the recovery of the natural world? Could we build societies that seek not only to reduce harm, but also to restore what has been damaged?
I do not want this work to be driven mainly by profit. I want it to help people understand, question, and imagine healthier ways of living.
One of the things that frightens me most is also one of the things I feel most compelled to do: speak more openly about the situation we face.
The years and decades ahead may be among the most difficult humanity has experienced. They will test our institutions, our communities, and our understanding of progress.
They will also give us choices.
This is a defining moment.
- Conny Lazo
The globe is draggable with a pointer. Keyboard users: the year slider and the milestone buttons below the globe control the same timeline, and the city list at the end of the page offers every city the markers do.
The cities
Each city gets the same treatment as The Long Landing article, watched locally at city level. They light up here as they publish. And of course a close-up of the climate map focused on the country, with the possibility to toggle each layer while the year passes.
Zinc roofs and stone, a half-artificial river — the first city of the series.
A maritime city losing the ocean's old moderation.
Already Europe's furnace — the city others will resemble.
A continental basin that traps its summers.
The well-run city meeting a climate it wasn't run for.
The north that warms fastest while looking safest.
Winter's city, losing winter.
A desert capital drinking from disappearing glaciers.
Equatorial steadiness meeting new extremes.
Lakes, forests, and the fastest-moving isotherms on Earth.
Twenty million people between drought and deluge.
A small port on a retreating coast — the series' sea-level witness.
The plateau city that believed it was exempt.
Wet-bulb frontier: the heat that tests the human limit.
Between glacier floods above and heat below.
A delta megacity negotiating with the sea.
Water from far away, heat from close by.
A basin city in the typhoon corridor.
The best-engineered city meets the century's storms.
Between the burning interior and the rising Pacific.
The far ocean — where the century arrives by water.
Credit
By Conny Lazo · The Door · September 2026
The hub of the Long Landing city series — a companion to The Long Landing timeline, whose curve, milestones and rules this page inherits. A scenario, not a forecast: current policies point to roughly 2.8°C by 2100. Unfortunately, I do not believe 2.8°C is where we will land, but rather something above 4°C.
Every dataset, what was computed from it, how each frame is placed on the timeline, and the terms it is used under are in Sources & replication below.
Sources & replication
Everything needed to rebuild this globe from public data: which files, which variables, which years, what was computed from them, how each frame is placed on the timeline, and under what terms. About 65 GB of raw data went in; the 15 layers came out as pre-rendered map frames. Script names refer to the site's build tooling (scripts/globe/). Two kinds of numbers appear below and should not be mixed: a window number describes a dataset's own 16- or 20-year window ("2085–2100"); an on-the-globe number is what the globe shows at a year of its own timeline. They differ because the timeline ends at +4.4 °C in 2100 while most datasets' hottest windows sit near +5.1 °C.
Each layer entry has the same six rows. Source: the files, variables and years downloaded. Reduction: what was computed from them offline, and by which script. On the globe: how many frames, the classes and contours drawn. Check: the headline numbers a rebuild should reproduce. Terms: the licence. Cite: the papers behind the data.
The frame every layer hangs on
- The clock
- src/content/long-landing/climate-series.json — the timeline every layer hangs on. History 1875–2025: global temperature anomalies rebased to 1850–1900 (GISTEMP-style) and CO₂ from Mauna Loa and ice cores (2024: +1.55 °C, 423 ppm; 2025: +1.45 °C, 426 ppm). From 2026 the Long Landing scenario centreline: 2026 +1.50 °C / 429 ppm · 2033 +1.85 · 2042 +2.42 · 2050 +3.00 / 505 · 2070 +3.90 / 565 · 2100 +4.40 / 615. Reference lines: SSP1-2.6 (+1.8 °C) and current policies (+2.8 °C). The globe reads the curve by linear interpolation; the HUD badge says "measured" before 2026 and "scenario" from 2026. The CO₂ path is this series’ own emissions story, not SSP5-8.5’s (which passes 1,100 ppm).
- Alignment
- By warming level, not by calendar. A year → the curve → a warming value → the nearest pre-rendered frame, snapped, never cross-faded. So "2050" on the globe is the +3.0 °C world, hotter than SSP5-8.5’s own 2050 (about +2.4 °C): the frames come from the model’s later years. Two calendar-keyed exceptions: Climate zones (epoch mid-years) and El Niño (a per-year calendar). Sea temperature’s observed frames are dated but keyed by their measured warming.
- Windows and anchors
- WorldClim family (Chronic heat, Rainfall, Aridity, Permafrost; Dry spells baseline 1971–2000): 1970–2000 observed; 2021–40, 2041–60, 2061–80, 2081–2100 ACCESS-CM2 SSP5-8.5 — anchors +0.4, +1.66, +2.56, +3.75, +5.1 °C. NEX family (Peak heat, Heatwaves, Hot nights): 1985–2000, 2013–28, 2045–60, 2065–80, 2085–2100 — anchors +0.6, +1.3, +2.7, +3.9, +5.2. Wet-bulb and Livability: 1985–2000, 2045–60, 2085–2100 — +0.6, +2.7, +5.2. Water stress: ~2019 baseline, 2030, 2050, 2080 — +1.2, +1.6, +2.4, +3.7. Staple crops: 1981–2010, 2050s, 2080s — +0.4, +2.7, +4.4. Sea temperature: 1901–30, 1931–60, 1961–90, 1991–2020 observed plus the four WorldClim-family windows — +0.05, +0.15, +0.35, +0.85, then +1.66 … +5.1. Where the WorldClim anchors come from: land-mean annual temperature (bio1) rises +1.89, +3.24, +5.02, +7.05 °C per window against 1970–2000; land warms ≈1.5× the globe (AR6); 1970–2000 ≈ +0.4 °C global. The NEX anchors read the same ACCESS-CM2 curve at the window mid-years. Water: observed +1.2 plus AR6 SSP5-8.5 warming at 2030 and 2050, 2080 interpolated.
- What 2100 shows
- The last frame is the +4.44 step. It reaches only part-way into each dataset’s hottest window: 51 % for the WorldClim family and Sea temperature, 42 % for the NEX family, 70 % for Wet-bulb and Livability; Staple crops reaches its 2080s window fully; Water stress stops at its 2080 frame (+3.7) from 2067 on, because Aqueduct’s projections end at 2080. Rule: a "2085–2100" number below is a source-window number; the on-the-globe number is what the globe shows at 2100.
- Grid, land, base
- One 3600 × 1800 equirectangular grid (0.1°, about 11 km at the equator) for every layer. Land is one canonical mask, Beck’s Köppen 1991–2020 map with class > 0 (build-landmask.mjs → land-mask-3600.bin), so coastlines never disagree between layers. The base sphere is flat two-tone — land (40, 50, 60), sea (14, 27, 36) — no satellite imagery, no relief.
- Frame engine
- framegen.mjs interpolates each continuous field between its two neighbouring windows at every warming step and only then classifies, so class boundaries genuinely move frame to frame; contour lines (35 °C, 48 °C, the 31 °C wet-bulb line) are drawn where the test flips against a neighbouring cell. 2 × 2 supersampling, RGBA PNG, a "calm" floor colour where nothing is crossed, a nodata grey where a dataset has no value (for example NEX south of 60° S). Continuous sources are sampled bilinearly before thresholding; categorical sources (Köppen, Aqueduct) nearest-neighbour. An earlier design cross-faded one texture per window; it was retired because a cross-fade paints off-legend colours for most of the century.
- The model
- One model for every in-house climate layer: ACCESS-CM2 (CSIRO-ARCCSS), run r1i1p1f1, SSP5-8.5, a warm-end model (equilibrium climate sensitivity ≈ 4.7 °C), chosen and declared consistently with the page’s hot branch. Three layers are not ACCESS: Water stress (WRI’s PCR-GLOBWB 2 hydrology driven by a five-model CMIP6 ensemble, "pes" = SSP5-8.5), Staple crops (GAEZ v4 on HadGEM2-ES RCP8.5, CMIP5 generation), Climate zones (Beck’s own constrained CMIP6 ensemble). El Niño and Sea temperature are observation-based; the model contributes only its change.
- Weighting
- Every land share is cos-latitude area-weighted (a 0.1° cell at 80° N is a sixth of an equatorial one). Denominators differ by grid: NEX layers = land 60° S–90° N (no Antarctica); WorldClim = land excluding Antarctica; Livability and Water = the canonical mask including Antarctica (8.3 % of land area, zero limits crossed). The HUD counters read public/globe/layer-stats.json (emit-layer-stats.py: one area-weighted number per warming step, interpolated to the year) and livability-counts.json (livability-pop-counts.mjs). The NEX grid begins at 60° S, row 0 south — a weighting that assumed a pole-to-pole axis mis-weighted Siberia as if it sat at 40° N and was corrected on 5 September 2026.
The fifteen layers, in rail order
1 Climate zones
- Source
- Beck et al. 2023, Köppen–Geiger V3 (1901–2099, constrained CMIP6 projections), the 0.1° GeoTIFFs from the V3 pack (koppen_v3.zip, 130.6 MB, gloh2o.org/koppen), 30 classes. Epochs used: 1901–30, 1931–60, 1961–90, 1991–2020 observed; 2041–70 and 2071–99 SSP5-8.5.
- Reduction
- None: the 0.1° map is the render grid. Read raw, nearest-neighbour, never interpolated (build-koppen-textures.mjs). Palette: this site’s intuitive palette v2; Beck’s original RGB kept as an alternative; koppen-legend.json carries both.
- On the globe
- Calendar-keyed: six epoch frames at their mid-years (1915, 1945, 1975, 2005, 2055, 2085) plus eleven migration frames in which cells flip one by one via a per-cell hash (half-way for the early gaps; 20/40/60/75/90 % for 1991–2020 → 2041–70; 25/50/75 % for 2041–70 → 2071–99). 17 frames, snapped. One limit to read it with: Köppen classifies the kind of climate, not its survivability — a tropical zone five degrees hotter keeps its class and its colour; the heat layers carry that change.
- Terms
- CC BY 4.0. Beck’s future maps use Beck’s ensemble, not ACCESS-CM2.
2 Chronic heat
- Source
- WorldClim 2.1 at 10 arc-minutes (~18 km): bio5, the hottest month’s mean daily maximum. Baseline 1970–2000 observed; futures = WorldClim’s downscaled CMIP6 ACCESS-CM2 SSP5-8.5 bioclimatic variables for the four windows. Anonymous download from worldclim.org.
- Reduction
- None offline: the GeoTIFFs are read directly, sampled bilinearly to 0.1°, interpolated between windows, then classified (build-heat-textures.mjs).
- On the globe
- 13 frames, +0.4 → +4.44. Classes: below 32 °C calm, 32–35, 35–40, 40–45, 45+; contour at 35 °C. A monthly mean, not a heatwave — the three NEX layers carry the days and nights.
- Terms
- WorldClim: free for academic and other non-commercial use; no redistribution of the data without permission; publishing maps made from it is allowed. This page redistributes no data, only rendered class maps.
3 Peak heat
- Source
- NASA NEX-GDDP-CMIP6 v1.0, daily tasmax, ACCESS-CM2 r1i1p1f1, bias-corrected and downscaled to 0.25° (BCSD against the Princeton GMFD observations); historical to 2014, SSP5-8.5 from 2015; grid 600 × 1440, 60° S–90° N. 80 yearly NetCDF files (~244 MB each) from the public AWS bucket nex-gddp-cmip6, fetched with curl (fetch-fill.sh, fetch-windows-ab.sh).
- Reduction
- peakheat-reduce.py: per cell, the single hottest day in the whole 16-year window (the maximum of the annual maxima), every day of every year → peak_<window>.bin.
- On the globe
- 13 frames, +0.6 → +4.44. Classes below 40 °C, 40–44, 44–48, 48+; contour at 48 °C, the crop-kill line (leaf proteins denature at roughly 45–50 °C; 44 °C is the class of Europe’s 2003).
- Check
- Share of land 60° S–90° N whose hottest day reaches 48 °C: windows 8 / 12 / 21 / 30 / 44 % → on the globe 13 % (2026), 23 % (2050), 35 % (2100). 44 °C: 25 / 31 / 42 / 55 / 67 % → 32 / 45 / 60 %. 40 °C: 44 / 52 / 66 / 73 / 80 % → 54 / 68 / 76 %.
- Terms
- NASA open data, no login, no restrictions stated; ACCESS-CM2 output CC BY-SA 4.0.
4 Heatwaves
- Source
- The same NEX-GDDP-CMIP6 tasmax corpus as Peak heat, all five windows.
- Reduction
- heatwave-reduce.py, a declared simplification of the ETCCDI WSDI index: a heatwave day is a day inside a run of three or more consecutive days above the local calendar-day 90th percentile of 1985–2000 (each day of the year pooled over a five-day window across the 16 baseline years, 80 samples), so off-season warm spells count. The yardstick stays fixed as the century warms. Leap days dropped. Per-window mean days per year → hw_<window>.bin.
- On the globe
- 13 frames. Classes below 45, 45–75, 75–120, 120–240, 240–300, 300+ days a year. HUD: days a year in heatwave, world land average.
- Check
- World land average: windows 18 / 74 / 169 / 234 / 286 days a year → on the globe 88 (2026), 186 (2050), 254 (2100). Land past 120 days: 13 / 86 / 99 %.
- Terms
- As Peak heat. ETCCDI indices: Zhang et al. 2011.
5 Hot nights
- Source
- NEX-GDDP-CMIP6 daily tasmin, same model, windows and discipline (fetch-tasmin.sh, fetch-windows-ab.sh; 80 files).
- Reduction
- hotnights-reduce.py, the ETCCDI TR index: nights a year with a minimum of 20 °C or more, plus the 25 °C and 30 °C counts (the 25 °C tier is computed but unused) → n20/n25/n30_<window>.bin.
- On the globe
- The one layer built outside framegen (build-hotnights-textures.mjs): the 20 °C count and the 30 °C count are interpolated and classified together. Classes below 30, 30–90, 90–180, 180–300, 300+ nights; a violet override where a cell has 30 or more nights a year that never drop below 30 °C. HUD: share of land with 30 °C nights.
- Check
- Land 60° S–90° N with 30+ tropical nights a year: windows 50 / 55 / 62 / 68 / 74 % → on the globe 56 / 64 / 70 %. The 30 °C-nights tier: 0.1 / 2.4 / 9.1 / 18.8 / 31.8 % → 3.5 / 12.1 / 25.4 %. Paris cell: 3 → 22 → 82 nights a year across the three main windows.
- Terms
- As Peak heat.
6 Wet-bulb
- Source
- Copernicus Climate Data Store, sis-extreme-indices-cmip6 v2.0: daily wet_bulb_temperature_index, bias-adjusted, ACCESS-CM2 r1i1p1f1, historical 1951–2010 + SSP5-8.5 2011–2100, native 1.25° × 1.875° (144 × 192). Fetched with cdsapi (fetch-wbt.py). CDS flags the dataset "no longer supported by providers, as-is" (January 2025).
- Reduction
- wetbulb-reduce.py: hottest wet-bulb day per window, every day, three windows (1985–2000, 2045–60, 2085–2100) → wbt_peak_<window>.bin; bilinear upsampling to 0.1° in the builder.
- On the globe
- 13 frames. Ladder: 26 °C (sustained labour unsafe), 28 (the 2003/2010 class), 31 (limit of healthy tolerance, Vecellio et al. 2022), 35 (theoretical human limit, Sherwood & Huber 2010); white contour at 31 °C. HUD: share of land that sees a day past the body’s limit.
- Check
- Share of land with a 31 °C wet-bulb day: windows 1.3 / 19 / 46 % → on the globe 4.8 % (2026), 23 % (2050), 39 % (2100). 35 °C: 0 / 0.4 / 6 % → 0 / 0.5 / 2.5 %. Shade, calm-air values by construction.
- Terms
- Licence to use Copernicus Products; attribution: contains modified Copernicus Climate Change Service information 2026. ACCESS-CM2 output CC BY-SA 4.0.
7 Rainfall
- Source
- WorldClim 2.1 10-arc-minute monthly precipitation, 1970–2000 observed, plus the ACCESS-CM2 SSP5-8.5 monthly futures for the four windows (same download as Chronic heat).
- Reduction
- Annual sum; percentage change against 1970–2000, only where the baseline is at least 100 mm a year — true deserts stay slate, because a percentage of nothing is noise (build-rain-textures.mjs, bilinear with longitude wrap).
- On the globe
- 13 frames. Classes −30 % or drier, −15 %, +15 %, +30 % or wetter. No HUD statistic.
- Terms
- As Chronic heat (WorldClim terms).
8 Aridity
- Source
- The same WorldClim monthly precipitation plus monthly tmin and tmax.
- Reduction
- Potential evapotranspiration by FAO-56 Hargreaves — 0.0023 × Ra × (Tmean + 17.8) × √(Tmax − Tmin), monthly, times days — then the aridity index P/PET in the UNEP bands: below 0.05 hyper-arid, 0.2 arid, 0.5 semi-arid, 0.65 dry sub-humid, else humid (build-aridity-textures.mjs). The index grids (ai_<window>.bin) also feed Livability.
- On the globe
- 13 frames. The "farming without irrigation stops" line is semi-arid.
- Check
- Land in the dry bands (index below 0.65), area-weighted, excluding Antarctica: 47 % in 1970–2000 → 55 % in 2081–2100. Hargreaves has no radiation or wind term, so this sits at the conservative edge of the published dryland-expansion range.
- Terms
- As Chronic heat (WorldClim terms).
9 Dry spells
- Source
- Copernicus CDS sis-extreme-indices-cmip6 v2.0: yearly CDD (ETCCDI consecutive dry days), ACCESS-CM2 r1i1p1f1, historical 1850–2014 + SSP5-8.5 2015–2100, native 1.25° × 1.875°. Fetched with cdsapi (fetch-drought.py).
- Reduction
- dryspell-reduce.py: window means (2021–40 … 2081–2100) minus the 1971–2000 mean = change in the year’s longest dry run, in days; bilinear to 0.1° (build-dryspell-textures.mjs).
- On the globe
- 13 frames. Classes +14 days (two weeks), +28 (a month), +56 (two months); shortening by 14 days or more is drawn green.
- Terms
- As Wet-bulb (Copernicus licence).
10 Water stress
- Source
- WRI Aqueduct 4.0, file geodatabase Y2023M07D05 (261.5 MB zip from files.wri.org, downloaded 3 September 2026). Baseline annual bws_cat on 68,506 HydroBASINS level-7 sub-basins (~2019 hydrology, 1979–2019 forcing); future annual pes30/50/80_ws_x_c on 16,395 basins — "pes" = pessimistic = SSP5-8.5; hydrology PCR-GLOBWB 2 driven by a five-model CMIP6 ensemble. Categories −1 arid-and-low-use, 0 to 4 (4 = more than 80 % of available water withdrawn).
- Reduction
- aqueduct-rasterize.py: basins rasterised (fiona/rasterio) to the 3600 × 1800 grid as int8 (ws_<frame>.bin).
- On the globe
- 7 frames, +1.2 → +3.7. The ordinal category is interpolated and rounded, so basins flip one at a time rather than blending; nothing after the 2080 frame. HUD: share of land in extreme stress.
- Check
- Extreme (category 4) share of all land: 8.3 % at baseline → 10.8 % at 2080; on the globe about 8.8 % (2026), 10.0 % (2050), 10.8 % ceiling.
- Terms
- Creative Commons Attribution 4.0 (WRI’s standard licence for data). Credit: WRI Aqueduct 4.0 — Kuzma et al. 2023, CC BY 4.0.
11 Staple crops
- Source
- FAO/IIASA GAEZ v4, rain-fed high-input suitability index (suHr, 0–10,000) at 5 arc-minutes (4320 × 2160). Baseline CRU TS3.2 1981–2010; futures HadGEM2-ES RCP8.5 2050s and 2080s using suHr0, the variant without CO₂ fertilisation (a declared choice). Eight crops: wheat, maize, wetland rice, barley, sorghum, pearl millet, soybean, olive. GeoTIFFs from data.gaezdev.aws.fao.org/res05/… (fetch-gaez.sh, fetch-gaez2.sh; downloaded 1–3 September 2026).
- Reduction
- gaez-reduce.py (rasterio — geotiff.js mis-decodes GAEZ’s LZW): best-of-eight suitability per cell → beststaple_<window>.bin; change = future − baseline.
- On the globe
- 11 frames, +0.4 → +4.4. Diverging orange/blue (deuteranopia-safe); classes ±1,000 and ±2,500 index points; cells GAEZ never evaluated are left unpainted (build-cropsuit-textures.mjs). HUD: share of farmable land that lost a class.
- Check
- Share of evaluated area that lost 1,000 points or more: 2050s 11.0 %, 2080s 18.6 % (on the globe 7.5 / 11.1 / 18.6 % at 2026 / 2050 / 2100); gained 1,000 or more: 24.2 % / 24.4 %, almost all boreal.
- Terms
- FAO copyright; non-commercial reuse with acknowledgement of FAO as source and copyright holder, no implied endorsement (GAEZ v4 platform disclaimer, "Re-use of GAEZ Data"). Required citation: FAO and IIASA. Global Agro Ecological Zones version 4 (GAEZ v4). Accessed 1–3 September 2026. URL: http://www.fao.org/gaez/ — © FAO.
12 El Niño
- Source
- NOAA ERSSTv5 monthly sea-surface temperature (2°, 1854 to July 2026) and GPCP v2.3 monthly precipitation (2.5°, 1979 to June 2026), both from NOAA PSL; the NOAA CPC ONI table (to May–July 2026 = +1.39). Manual downloads.
- Reduction
- elnino-composite-reduce.py: the pattern is the mean December–February anomaly (against the 1981–2010 DJF climatology) of the three strongest observed events, 1982–83, 1997–98, 2015–16 — SST over the ocean, rainfall over land; a La Niña composite the same way from 1988–89, 1999–2000, 2010–11. The calendar (build-enso-calendar.py): 1901–1949 reconstructed from ERSST Niño-3.4 DJF against 1901–1950; 1950–2026 measured from ONI DJF (strength classes at ±0.5, ±1.0, ±1.5); 2026 carries the event in progress; 2027 the historic-class event NOAA CPC forecast in August 2026; 2028 a La Niña rebound (scenario); 2029–2049 replays the observed 1979–1999 cadence; from 2050 a roughly two-year alternation (Stuecker et al. 2025).
- On the globe
- Ten pattern textures (five strengths × two phases) plus a neutral calm frame; a warming dial lifts every event one class at +2.3 °C and two at +3.3 °C into two "beyond anything observed" classes — a declared scenario rule, never applied to the observed era. HUD names phase, strength and era word (reconstructed, measured, forecast, our scenario, projected).
- Terms
- ERSSTv5: no constraints on access or use. GPCP: NOAA/NCEI open data.
- Cite
- Huang et al. 2017 (ERSSTv5) · Adler et al. 2003 (GPCP), J. Hydrometeor. 4:1147 · Cai et al. 2014 · Cole et al. 2026 · Stuecker et al. 2025
13 Sea temperature
- Source
- Observed: ERSSTv5 (above). Future: CMIP6 ACCESS-CM2 tos (sea-surface temperature), monthly, historical 1995–2014 + SSP5-8.5 2015–2100, native tripolar ~1° ocean grid, version 20191108, via CDS projections-cmip6 (fetch-tos.py, cdsapi).
- Reduction
- seatemp-reduce.py: observed windows as annual-mean anomaly against 1901–1930. seatemp-futures-reduce.py, the delta method: the model window mean minus the model’s own 1995–2014, binned to ERSST’s 2° grid, added to the observed 1995–2014 anomaly — observed spatial detail carries forward, the model contributes only its change.
- On the globe
- 15 frames, +0.05 → +4.44. Classes cooler, +0.5, +1, +2, +3, then +4, +5, +6 °C and more — the ladder keeps climbing past +3 so the late decades keep their structure. HUD says "measured" to 2020, "measured through 2020, then extended using modelled warming" after.
- Check
- Ocean past ±0.5 °C of its 1901–1930 self: 0 % → 82 % (1991–2020) → 100 %. The "cold blob" south of Greenland warms +1.43 °C in 2081–2100 against an ocean mean of +4.19 °C.
- Terms
- ERSSTv5 as above; ACCESS-CM2 output CC BY-SA 4.0 (Copernicus licence for the CDS copy).
14 Livability
- Source
- A derived index: seven published limits evaluated per cell from the layers above — (1) mean annual temperature of 29 °C or more, the edge of the human climate niche (Lenton et al. 2023; WorldClim bio1 + ACCESS windows); (2) a wet-bulb day of 31 °C (Vecellio et al. 2022); (3) aridity index below 0.2 (UNEP arid); (4) a hottest day of 44 °C; (5) of 48 °C (nested); (6) Aqueduct extreme water stress; (7) best staple suitability below 1,000 (GAEZ). Population: WorldPop 2020, 1 km mosaic (ppp_2020_1km_Aggregated.tif, 870 MB), world total 7.97 billion.
- Reduction
- build-livability-textures.mjs and livability-pop-counts.mjs: per 0.1° cell, count the limits crossed in each of three windows (continuous inputs bilinear before thresholding; water at the nearest warming frame with the 2080 ceiling; cells GAEZ never evaluated take no strike) → strikes_<window>.bin; people summed per class with the 2020 population held constant by design.
- On the globe
- 13 frames. Classes 1, 2–3, 4–5, 6–7 limits. The HUD interpolates the counts to the year.
- Check
- People past at least one limit: windows 3.55 / 5.54 / 7.38 billion → on the globe 4.4 (2026), 5.8 (2050), 6.8 billion (2100). Past two or more: 1.64 / 3.33 / 6.15 → 2.4 / 3.7 / 5.3 billion. Land past at least one limit: 38 / 53 / 73 % of all land including Antarctica = 42 / 58 / 80 % excluding it.
- Terms
- WorldPop CC BY 4.0. Limits are the cited authors’; the counting is this page’s, with no weights.
15 Permafrost
- Source
- Obu et al. 2018/2019, permafrost probability (PERPROB) at 1 km, 2000–2016, ESA GlobPermafrost / AWI, PANGAEA (1.9 GB, read at its ~3.7 km overview level; extent to 25° N; manual download). Air temperature: WorldClim bio1 1970–2000 plus the ACCESS-CM2 SSP5-8.5 windows.
- Reduction
- build-permafrost-projected.mjs, after Chadburn et al. 2017: permafrost probability fitted against mean annual air temperature from the held data (0.5 °C bins, monotone), then each future window’s air temperature applied degrade-only — min(p₀, curve) — so the observed spatial detail survives.
- On the globe
- 10 frames, +0.9 → +4.44. Classes continuous (probability ≥ 0.9), discontinuous (≥ 0.5), sporadic (≥ 0.1), isolated (≥ 0.005); a thaw accent where ground with p₀ ≥ 0.35 is lost.
- Check
- Observed extent 13.9 million km² (Obu publishes about 14); decline about 2.9 million km² per degree, to about 1.8 million km² at +5.1 °C — the conservative edge of Chadburn’s 2.9–5.0 constraint. The frames show committed equilibrium extent; real thaw lags.
- Terms
- Obu et al. 2018 data CC BY 3.0.
Around the layers
- Retired layer
- Committed seas (fraction of each cell below about 2.3 m per sustained degree, after Levermann et al. 2013, on NOAA NCEI ETOPO 2022 60″ surface elevation) left the rail on 3 September 2026; its scripts and reductions are kept. Sea level is deliberately not drawn on this globe.
- Timeline sources
- Foster & Rahmstorf 2026, Geophysical Research Letters (post-2013 acceleration; doi 10.1029/2025GL118804) · Hansen et al. 2025, Environment 67(1) · IPCC AR6 WG1 Table SPM.1 (SSP5-8.5 central +4.4 °C by 2100) · Meinshausen et al. 2020, GMD 13:3571 (SSP1-2.6 reference; doi 10.5194/gmd-13-3571-2020) · UNEP Emissions Gap Report 2025 (current policies +2.8 °C).
- Cities
- src/content/city-landing/cities.ts, 21 cities, this site’s own list. Only Paris carries local numbers so far: +2.5 °C today against its pre-industrial self (Paris-Montsouris: +2.3 °C from 1873–1902 to 2000–2019, per Agence Parisienne du Climat, plus a share of urban heat island) and 1.55 °C per further global degree, an author’s choice among the multipliers in the literature, giving +7.0 °C at 2100. Card formula above +1.5 °C: (global − 1.5) × 1.55 + 2.5. Other cities show global numbers until their article lands.
- Not scripted
- Manual downloads, listed in the corpus’ DATA-SOURCES.md only: Köppen, WorldClim, Aqueduct, Obu, the sixteen GAEZ suHr0 futures, ERSST, GPCP, ONI, the first twelve NEX files. The El Niño neutral frame was hand-made.
- Not recorded
- Which CMIP6 models sit inside Beck’s future maps; the WorldClim CMIP6 ensemble member; the exact GISTEMP product behind the history points; how the 1.55 Paris slope was chosen beyond "author’s choice".
- Rendering
- The globe is globe.gl on three.js; textures are pre-rendered PNGs under public/globe/, one per layer per warming step. The rendering is © Conny Lazo; the datasets remain their authors’ under the terms above — WorldClim forbids redistribution of its data and ACCESS-CM2 is share-alike, so no blanket licence is placed on the textures.
Credits and licences
- Beck, H.E. et al. 2023. High-resolution (1 km) Köppen–Geiger maps for 1901–2099 based on constrained CMIP6 projections. Scientific Data 10:724. CC BY 4.0. doi:10.1038/s41597-023-02549-6
- Fick, S.E. & Hijmans, R.J. 2017. WorldClim 2: new 1-km spatial resolution climate surfaces for global land areas. Int. J. Climatol. 37:4302–4315. Data: worldclim.org (v2.1, incl. CMIP6 downscaled futures), non-commercial use. doi:10.1002/joc.5086
- Thrasher, B. et al. 2022. NASA Global Daily Downscaled Projections, CMIP6. Scientific Data 9:262. NEX-GDDP-CMIP6 v1.0, NASA open data. doi:10.1038/s41597-022-01393-4
- Bi, D. et al. 2020. Configuration and spin-up of ACCESS-CM2. J. Southern Hemisphere Earth Syst. Sci. 70:225. CMIP6 output CSIRO-ARCCSS, CC BY-SA 4.0. doi:10.1071/ES19040
- Copernicus Climate Change Service: sis-extreme-indices-cmip6 v2.0 and projections-cmip6. Contains modified Copernicus Climate Change Service information 2026; neither the European Commission nor ECMWF is responsible for any use made of it. cds.climate.copernicus.eu
- Kuzma, S. et al. 2023. Aqueduct 4.0: Updated Decision-Relevant Global Water Risk Indicators. WRI Technical Note. CC BY 4.0. doi:10.46830/writn.23.00061
- FAO and IIASA. Global Agro Ecological Zones version 4 (GAEZ v4). Accessed 1–3 September 2026. URL: http://www.fao.org/gaez/ — © FAO, non-commercial reuse with acknowledgement. Model documentation: Fischer, G. et al. 2021, FAO, Rome. doi:10.4060/cb4744en
- Huang, B. et al. 2017. Extended Reconstructed Sea Surface Temperature, Version 5 (ERSSTv5). J. Climate 30:8179. No constraints on use. doi:10.1175/JCLI-D-16-0836.1
- Adler, R.F. et al. 2003. The Version-2 Global Precipitation Climatology Project (GPCP) monthly precipitation analysis. J. Hydrometeor. 4:1147 (v2.3 file, NOAA PSL / NCEI). NOAA CPC Oceanic Niño Index table.
- Obu, J. et al. 2018. Ground temperature map, 2000–2016, Northern Hemisphere permafrost. PANGAEA. CC BY 3.0. Obu et al. 2019, Earth-Science Reviews 193:299. doi:10.1594/PANGAEA.888600
- WorldPop 2020, 1 km mosaic (Global 2000–2020). University of Southampton. CC BY 4.0. www.worldpop.org