Tissot
Every flat map of the Earth lies. Watch each one do it.
Morph the world between map projections and read what each one gets wrong, with exact circles that show the distortion.
How it's built
Tissot is a map of the Earth that can turn into any of twelve flat maps, and show you what each one gets wrong. Everything runs in your browser; nothing is sent anywhere.
The maths
- Twelve map projections are written from scratch in TypeScript, each with its inverse, and checked against the worked examples in John Snyder's Map Projections: A Working Manual (a US government publication).
- Maps that claim to keep area really keep it, and maps that claim to keep shape really do: tests check this on thousands of random points, with formulas written separately from the code under test.
- Each circle you see is an exact small circle on the sphere, projected point by point, so large circles show the real, finite distortion. The numbers in the inspector come from the same projection's local scale in each direction.
The drawing
- The globe is one mesh of triangles. Morphing blends two projections point by point, and dragging turns the sphere underneath, so any projection can be tilted.
- The map is drawn on the graphics card when it is trustworthy. At start-up a tiny test picture is drawn twice, once by the graphics card and once by a plain CPU version, and if they disagree Tissot quietly uses the CPU version. The map is never blank.
- The sea's water lining comes from an exact distance transform of the coastline, computed in a background worker.
Who was Tissot
Nicolas Auguste Tissot was a French cartographer. In 1859 and 1881 he showed that the distortion of a map at any point can be drawn as a small ellipse, which is why the circles on this map are called Tissot's indicatrices.
Data and licences
Coastlines come from Natural Earth, which is in the public domain, packaged as TopoJSON by the world-atlas project. Fonts are Source Serif 4 and Overpass, under the SIL Open Font License. Made with Natural Earth.
Made by Talha Munir.