playproj

A guide to map projections

For people who meet projections as coordinate transforms on arrays (ocean models, satellite swaths, tiles, cells, cameras) rather than as maps on a wall. Each chapter is short; the pages it links are the argument. Drag them.

1. The body

Before any projection there is a shape to project from. A sphere is close enough for most pictures; real coordinates live on an ellipsoid, about 21 km shorter through the poles than across the equator, and heights above sea level are measured from the geoid, a lumpy surface the ellipsoid only approximates. Eratosthenes had the size of the sphere from a well, a stick and a shadow.

2. A light and a plane

The oldest projections are literal: put a point of light somewhere on the axis through a sphere, touch a plane to the far side, and follow each ray. With the light at the centre you get the gnomonic, at the antipode the stereographic, at infinity the orthographic, and anywhere else a general perspective. Two azimuthal projections need no light at all: the equal-area (a compass from the tangent point) and the equidistant (a string).

3. Cones and cylinders: one family per property

Wrap a cone round the sphere, touching along one parallel, and unroll it. Slide that standard parallel to the equator and the cone opens into a cylinder; slide it to a pole and it flattens into a plane. So the cylinder, the cone and the plane are one surface, and each property (equal distance along meridians, conformal, equal-area) is one family across all three:

PropertyCylinderConePlane
Equidistanteqceqdcaeqd
Conformalmerclccstere
Equal-areaceaaealaea

The conformal row is Lambert's own framing. He presented the conformal conic (1772) as the family that contains the polar stereographic and Mercator's chart (Snyder 1987, section 15). On the sphere, with one standard parallel and cone constant n = sin(lat_1), and t = tan(pi/4 - lat/2):

polar stereographic   rho = 2R t
conformal conic       rho = F t^n,   theta = n lon
Mercator              y   = -R ln t

The cone raises the stereographic radius to the power n. At n = 1 nothing changes. As n goes to 0, t^n is about 1 + n ln t, so the radius becomes a constant minus a logarithm: the apex runs off to infinity and the circles straighten into Mercator's parallels. Mercator is the logarithm of the polar stereographic, and the conic is a power of it. (PROJ's lcc stops short of either end, lat_1 = 0 or 90; GeographicLib's conic treats both as exact special cases.)

4. Measuring distortion

Every flat map stretches the sphere somewhere; the question is where and how, and it has numbers. Tissot's indicatrix is the image of a small circle: its axes are the greatest and least scale at a point, so a conformal map keeps it round and an equal-area map keeps its area. PROJ computes the same quantities (h, k, angular deformation, areal scale) as proj_factors. Projections are chosen to solve a measurement problem: area, angle, or distance (along a line or from one point).

5. Lines: great circles and rhumbs

"Straight" depends on the map. The gnomonic draws every great circle (the shortest way) as a straight line; Mercator draws every rhumb line (a constant compass course) as a straight line. In the Southern Ocean they part company fast: the great circle from Hobart to the western stations bends south towards the ice while the rhumb line keeps north. Transverse and oblique aspects move a projection's good line to where you need it, which is all UTM is.

6. The central projection beyond maps

The gnomonic is the pinhole camera: projection through a point onto a plane. A straight line in 3D stays straight, so a triangle stays a triangle. That one property puts it everywhere outside cartography. A frame camera on a satellite or a drone is a central projection, which is what orthorectification undoes. A cube map is six gnomonic faces, and so are the equiangular cubed sphere of climate models and the faces of S2 cells; H3 starts from an icosahedron with gnomonic faces.

Terrain analysis uses it for the same reason. To find what an eye can see, project the terrain through the eye into a few gnomonic wedges and add triangles nearest first, keeping a horizon: what rises above it is visible. A cast shadow is the same question asked of the sun, an eye at infinity, where the projection becomes orthographic. Point viewshed and sun shadow are the two ends of the light in chapter 2.

7. Poles and the antimeridian

Data for the high latitudes is where the habits of global data break. Polygons are stored with a seam at 180 degrees and a fake edge along the bottom of the map; rasters come in 0 to 360 or -180 to 180 longitude and lose half the world when reprojected the wrong way; Mercator has no pole at all. Polar work wants a polar projection, usually the stereographic or the Lambert azimuthal equal-area, and they look so alike over a hemisphere that knowing which one is in use really matters.

The other lesson is not to reproject at all when you can avoid it. To summarise a daily raster over a set of polar regions, rasterize the regions once onto the raster's native grid, so every cell knows its region, and the rest is a table lookup for every day of data, with no resampling.

After M. Sumner (2019), Challenges working with data in polar regions, an R workshop.

8. The whole world

A world map has to compromise or cut. Compromise projections (Robinson, Winkel tripel, Equal Earth) spread the error; interrupted ones cut the sphere where it hurts least, along the oceans for land or the land for oceans. The arguments about which one to use are older and louder than the maths.

9. Grids of cells

Discrete global grids divide the sphere into cells with names: squares from a cube, hexagons from an icosahedron, equal-area rows for ocean colour, UTM squares for imagery. Each one is a projection plus a rule for cutting it up, and each makes a choice about equal area against equal shape.

10. The array is the map

A raster is a CRS plus six numbers: the affine from column and row to x and y. "Regular" means regular in some CRS, and a grid shipped as two arrays of longitude and latitude is often regular in a projection nobody wrote down. Model grids go further: rotated poles, tripolar oceans, cubed spheres and curvilinear index space. Chunks, tiles and overviews are how those arrays reach you.

11. Datums and local grids

The same latitude and longitude can name places metres apart on different datums, and the continents move under all of them. A state grid is a projection fitted to a jurisdiction on a datum of its time; moving between them is a Helmert transform or a grid of shifts.

12. Things that go wrong

Most projection bugs are not in the projection. They are in the edges: the antimeridian, the poles, the seam of a texture, a polygon that wraps the wrong way, a straight line that should have been densified. Each has a picture.

Sources