Skip to content

About

Interactive 3D web visualization of global temperature since 1880

Topics

Resources

Stars

10 stars

Watchers

0 watching

Forks

Latest commit

 

History

85 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Climate Spiral

Explore monthly climate measurements in an interactive 3D spiral. Each turn represents one year; distance from the center and color show the selected value. Switch to Unwrapped to compare the months of different years as stacked lines.

Open the live app

Examples

Global Temperature

temperature.mp4

Global Sea Level

sealevel.mp4

Datasets

Dataset Monthly measurement Source Starts
Global Temperature Combined land and ocean temperature anomaly, °C NASA GISTEMP 1880
Local Temperature Temperature anomaly for a location, station, or country, °C Open-Meteo, NOAA GHCN-Monthly, CRU-CY 1950 / station-dependent / 1901
Ocean Temperature Sea surface temperature anomaly, °C NOAA NCEI 1850
Land Temperature Land surface air temperature anomaly, °C NOAA NCEI 1850
Arctic Sea Ice Extent Extent, million km² NOAA/NSIDC 1978
Antarctic Sea Ice Extent Extent, million km² NOAA/NSIDC 1978
Arctic Sea Ice Volume (PIOMAS) Model-estimated volume, 10³ km³ PIOMAS 1979
Global CO2 Atmospheric concentration at Mauna Loa, ppm NOAA GML 1958
Global Methane Globally averaged marine surface concentration, ppb NOAA GML 1983
Global Sea Level Change in global mean sea level, mm CU Sea Level Research Group 1993

Temperature values are anomalies relative to 1951-1980; the NOAA land and ocean series are rebased from their original reference period. Sea ice extent measures ice-covered ocean area, while PIOMAS volume includes thickness and is model-estimated. CO2 and methane show concentrations, not emissions. Sea level shows change relative to 1993. Units and display scales differ across dataset types, so equal radii or colors do not imply comparable climate effects. See Data Sources and Methods for sources, processing, missing-month handling, and scientific limitations.

Using the App

The animation starts automatically. Use the controls and timeline at the bottom to pause, step through months, or jump to either end. Choose a dataset and switch between Spiral and Unwrapped at the top of Settings.

In View, 3D Tube switches between a shaded tube and an unlit line. Line Width works in both modes; Tube Sides controls the tube's cross-section detail (8 by default). With Smooth Lines enabled, Segments per Month sets curve detail in either mode: 3, 6 (default), 12, or 24. Higher detail makes close-ups smoother at a higher rendering cost, without adding observations.

Color By offers Value (the dataset's default scale), Year (older to newer through violet, blue, cyan, green, yellow, orange, and red), Monthly Anomaly (difference from each calendar month's reference mean), Yearly Anomaly (one color for each complete year's average monthly deviation), or Single Color with a color picker. Anomaly colors use 1991-2020 where coverage allows, otherwise a labeled available-record mean; incomplete years are dark gray in Yearly Anomaly. The legend follows the selected mode in the viewer and videos; measurement values, reference guides, and geometry stay unchanged.

Press Enter to wrap/unwrap, Space to play/pause, comma / period to step backward/forward one month (pausing playback), or Home / End to jump to either end. S / I toggle Settings / Info, and Escape closes an open panel or stops a camera preview. Typing and focused controls keep their normal keys; playback/layout shortcuts are disabled during preview or recording.

Hold a month button or comma/period to keep stepping. Add Shift to step by 12 calendar months, including Shift-clicking or holding either button. If the target month is missing, year steps use the next available observation in the chosen direction; they never invent data.

Choose Local Temperature and search for a city, country, or latitude, longitude, or press the location icon to use your device's location with permission. Selecting a country automatically opens its CRU country average, with no source switch needed; country names and codes can be searched offline. For cities and coordinates, Local estimate (ERA5-Land) is the default, with Weather station (NOAA) available as a separate source. Station search recommends a nearby record and offers alternatives with distance, history, and completeness. All three sources use 1951-1980 and save data on your device. Country averages begin in 1901 and receive annual releases. The first reanalysis download takes longer.

Drag to rotate and scroll or use a two-finger pinch to zoom. Enable Free Camera in Settings to pan with a right-button drag. Press 1 for top, 2 for front, 3 for right, 4 for left, or 5 for back; double-click or double-tap to reset to top. Arrow Up selects top and Arrow Down selects front; Arrow Left/Right rotate by a quarter turn from a side view. Double-right-click moves from top to front, then cycles right, back, left, and front in quarter turns. The camera also snaps into those orientations after a nearby rotational drag.

On mobile, double-tap with two fingers to move from top to front, then cycle right, back, left, and front. Spread three fingers to unwrap the spiral and pinch them together to wrap it again. Tap outside Settings to close it. Some system gestures (including VoiceOver's two-finger double-tap) can take precedence; Settings provides View → Camera View and the layout toggle as alternatives.

The app can be installed as a standalone web app from your mobile browser's Add to Home Screen command. After an initial online load, its service worker caches the app and local datasets for offline use.

Exporting

Open Export to download a .glb model or record a video. Video is rendered locally in your browser and downloads automatically. The Months per frame control in Animation sets playback and export speed; the default is seven monthly observations per 30 fps frame. The Export section shows the estimated duration.

Advanced video settings offer Full HD landscape, portrait, square, current-window, and custom resolutions, plus an optional legend. You can build a camera path from top, front, and right views of either layout, insert timed pauses, and preview the path before recording. The browser pauses an export while its tab is hidden and resumes when you return. High resolutions need more GPU and encoding resources; keep the window size unchanged during recording.

The default path draws in Spiral Top, pauses for one second, moves to Spiral Front over two seconds, and pauses again. All camera steps remain editable.

Running Locally

The app uses HTML, CSS, JavaScript modules, and Three.js, with no build step. Serve the repository over HTTP, for example with python -m http.server 8000, then open http://127.0.0.1:8000/. The first load needs network access for CDN assets.

For dataset processing and source citations, read Data Sources and Methods. For tests, data updates, video automation, and contributor setup, read Maintenance.

The project builds on the Climate Spiral concept introduced by Ed Hawkins in 2016; see also NASA's visualization. Licensed under the MIT License.

About

Interactive 3D web visualization of global temperature since 1880

Topics

Resources

Stars

10 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages