DSC 106 climate visualization

Finding San Diego's Future Climate Twin

Ask where San Diego's climate is heading and you'll hear one word: Phoenix.

But the real climate models tell a different story, and it ends somewhere most people would never guess. Scroll to find San Diego's actual climate twin.

Why climate twins?

A familiar city can make a future climate feel less abstract.

Instead of only showing projected degrees of warming, this page compares San Diego's future seasonal temperature and rainfall patterns with climates that people can locate on a map today.

Scrollytelling explorer

Scroll to explore one question at a time.

Step 1 of 5

San Diego is on the move.

This is climate space: warmer to the right, wetter toward the top. The teal line traces San Diego from today to your chosen future, pick 2050 or the 2080s to see how far it travels. Every other city sits at its climate today.

  • The dashed box is the model's range of futures.
  • A catch: these axes are only annual averages. The dot that looks nearest, often a desert city like Tucson, may be a poor twin once seasons and summer heat count.
  • Step 2 settles it with the full seasonal pattern.
Step 2 of 5

The closest twin is Los Angeles.

The Climate Twin Index scores how closely each present-day city matches San Diego's future, by default 60% temperature, 30% rainfall, 10% summer heat. Los Angeles wins, then Riverside; Phoenix sits near the bottom.

  • Click any bar to select that city.
  • Drag the sliders to redefine what "similar" means.
  • The order barely budges across scenarios, LA stays on top.
Step 3 of 5

Watch the climate travel.

Zoomed in on San Diego and its two closest twins. The orange marker is San Diego's projected climate; drag the year or press play and it is pulled toward the city whose climate it most resembles today. The closer the match, the stronger the pull.

  • Early years: the marker sits on San Diego, its climate still feels like its own.
  • Press play to send San Diego's climate across the decades.
  • The cities are barely 150 km apart, but climate distance is the point.
Step 4 of 5

Three climates, side by side.

San Diego's projection against its two closest twins, Los Angeles and Riverside, today. The top panel is seasonal temperature, the bottom is rainfall; whiskers mark the model's p10 to p90 range.

  • Teal = San Diego's future, orange = LA, blue = Riverside.
  • Look at summer, that's where the three pull apart.
  • Rainfall is where a hotter inland city stops matching.
Step 5 of 5

When does the twin run out?

Each bar is the best match San Diego can find in the selected scenario, one decade at a time. Use the scenario buttons above to compare low, moderate, and high emissions paths.

  • Click a bar to move the story to that year.
  • A score of 56 means even the closest city barely fits.
  • That gap is San Diego heading somewhere with no twin.

Step 1

How does San Diego's future climate move?

Selected city
Scenario
Future period
What counts as "similar"?

The path runs from San Diego today to San Diego in your selected future period. Every other city is plotted at its present-day climate.

Read this first

Each city is collapsed to two numbers, its average temperature and yearly rainfall, so a hot, dry desert city can land right next to San Diego's future even though its scorching summers and monsoon rains feel nothing alike. The Climate Twin Index in Step 2 compares all four seasons and summer heat, which is why the closest dot here is not always the real twin.

What to notice

Each bar splits into weighted components. A city can top the ranking by being consistently close across all seasons, even if it's less famous as a heat comparison.

202520552085

Map caveat

The orange marker is San Diego's projected climate, pulled toward the cities it most resembles today. The closer the climate match, the stronger the pull. These cities sit within ~150 km of each other, so this is climate distance, not map distance.

Why Los Angeles edges out Riverside

San Diego's future (teal) is shown beside Los Angeles and Riverside today. Matching heights in both the temperature and rainfall panels make a stronger twin; whiskers show how far the projection could shift across climate models.

The match runs out

Each bar is the best Climate Twin Index San Diego can reach in the selected scenario. The decade-by-decade view shows whether the closest twin fades gradually or falls away late in the century.

The takeaway

San Diego isn't becoming Phoenix. It's becoming Los Angeles, and then leaving the map.

Across every emissions scenario, the closest present-day match to San Diego's projected climate is Los Angeles, followed by inland Riverside, not the desert cities most people name. Phoenix and Tucson rank near the bottom: their scorching, monsoon-fed summers look nothing like San Diego's mild, bone-dry ones. But follow the high-emissions path to the 2080s and even Los Angeles stops fitting, San Diego's summers warm so far that no city we compared has lived through that climate yet. A familiar twin makes the near future legible; the disappearance of any twin is the warning.

Watch

The two-minute tour

Methodology

How the Climate Twin Index is calculated

Compare seasonal profiles

Each candidate city's real present-day climate (ERA5 reanalysis, 1991-2020) is compared with San Diego's projected future climate, season by season, for both temperature and rainfall.

Score each component 0 to 100

Seasonal temperature, rainfall, and summer-heat differences become match scores from 0 (totally different) to 100 (identical), so different units don't distort the result.

Weight them, your call

Index = w₁·Temperature + w₂·Rainfall + w₃·Summer heat. Defaults are 60/30/10, but the sliders let you decide what "similar" means and watch the ranking re-sort.

San Diego's future = its real ERA5 seasonal baseline plus the CMIP6 multi-model change signal (temperature added in °C, rainfall scaled by percent change), a standard delta-downscaling approach.

Uncertainty band = the p10 to p90 spread across the CMIP6 model ensemble, shown as whiskers on the seasonal fingerprint and a shaded box on the trajectory.

Distances use root-mean-square seasonal differences, with summer heat scored separately so monsoon-driven desert cities aren't mistaken for coastal ones.

Project writeup

Design rationale and development process

Design decisions

We turned a dense dashboard into a scrollytelling explanation so the reader meets the question, then the Climate Twin Index, then the result, one step at a time. The ranking uses bar length because position and length are the most accurate channels for comparing ordered values. Step 1 plots cities in a shared temperature and rainfall space; later steps deliberately narrow focus, the map zooms to only the two closest twins so the reader compares climate, not geography.

Interaction rationale

The scenario and period buttons act as dynamic queries over the dataset, and the weight sliders let the reader redefine what "similar" means and watch the ranking re-sort, turning an arbitrary 60/30/10 choice into something testable. The signature interaction is the map's year slider: drag it or press play and a marker for San Diego's projected climate travels to whichever nearby city it most resembles that year, making a moving climate concrete. Step 5 uses the scenario buttons to compare SSP pathways, then shows the best available twin decade by decade.

Development process

We replaced every placeholder with real public data: ERA5 reanalysis for present-day cities and the CMIP6 ensemble for San Diego's future, combined with a standard delta-downscaling method. The most time-consuming work was expressing "similarity" without hiding temperature and rainfall behind one number, solved with the component-weighted bars and sliders. The challenge we were most unsure about, showing model uncertainty without burying the story, is now handled by the p10 to p90 whiskers and the trajectory's range box.

Data

Real, public climate data, no placeholders

Present-day climate for all ten cities comes from ERA5 reanalysis (1991-2020 climatology) sampled at each city's coordinates via the Open-Meteo archive. San Diego's future comes from the CMIP6 multi-model ensemble (SSP1-2.6, SSP2-4.5, SSP5-8.5; mid-century and end-of-century) via the World Bank Climate Change Knowledge Portal, with p10 / median / p90 percentiles for the uncertainty band.

The shipped thunder4champ_climate_dataset.csv holds the real long-format values (200+ rows across 11 columns), and the pipeline is fully reproducible: fetch_era5.py + fetch_cckp.py + build_data.py rebuild data.js directly from those public APIs.

Where you left it

Your current result