Skip to main content

Globe and map projections compared with one dataset

A projection changes the geographic argument a visualization makes. To make those differences visible, the lab below renders the same routes and cities four times. Only the projection changes.

Loading the projection comparison...

Use the focus buttons to move all four views to the same longitude, latitude, and zoom request. The Pacific seam view is especially useful: the orthographic globe rotates naturally, while each flat map must decide where and how to split the world.

What changes in the same frame

ViewWhat it preserves wellWhat becomes misleadingGood fit
Orthographic globeThe visual shape of one hemisphere and an intuitive sense of depthHalf the world is hidden, and distances near the edge are compressedProduct visuals, global networks, routes, and spatial storytelling
EquirectangularLongitude and latitude map directly to horizontal and vertical positionHigh latitudes stretch horizontally, and area is not preservedSimple data grids, texture authoring, and direct coordinate inspection
MercatorLocal angles and familiar navigation shapesPolar regions become dramatically oversized, and the poles cannot be shownFamiliar web-map interaction and direction-focused views
Natural EarthA balanced whole-world silhouette with moderate distortionIt preserves neither exact area nor exact local anglesReports, dashboards, and editorial world maps

The moving route is the same great-circle path in every panel. On the globe it rises over the sphere. On the flat maps it curves because the spherical path is being projected onto a plane. A straight line on a flat map would be a different geographic claim.

Reproduce the comparison

const shared = {
markers,
arcs,
preset: "blueprint",
autoRotate: false,
graticule: true,
center: { lon: 12, lat: 18 },
zoom: 1,
};

const views = [
createGlobe(globeCanvas, { ...shared, mode: "globe" }),
createGlobe(equirectangularCanvas, {
...shared,
mode: "map",
projection: "equirectangular",
}),
createGlobe(mercatorCanvas, {
...shared,
mode: "map",
projection: "mercator",
}),
createGlobe(naturalEarthCanvas, {
...shared,
mode: "map",
projection: "naturalEarth",
}),
];

function focusAll(lon, lat, zoom) {
for (const view of views) {
view.setZoom(zoom).flyTo(lon, lat, { instant: true });
}
}

Keep the marker and arc object references shared if you are measuring performance. CanvasGlobe caches sampled great-circle points per arc object, so rebuilding identical route objects would add unrelated work to the comparison.

Reading the evidence honestly

This lab holds the canvas ratio constant at 2:1 to make the panels easy to compare. That is a controlled comparison, not the ideal presentation ratio for every projection. In a real interface:

  • a globe is usually strongest in a square or near-square frame;
  • an equirectangular world map naturally fits a 2:1 frame;
  • Mercator needs a chosen latitude window because the poles approach infinity;
  • Natural Earth uses a rounded world outline and benefits from some breathing room around the edges.

The bundled coastline uses simplified Natural Earth 1:110m geometry. It is suitable for global views, but it is not a cadastral or street-level boundary source. Projection mathematics can place a marker precisely even when a simplified shoreline makes that marker look slightly offshore.

Choosing quickly

  • Choose the globe when depth, routes, and global presence are the story.
  • Choose equirectangular when direct longitude and latitude alignment matters.
  • Choose Mercator when the audience expects a familiar navigational map and polar area is not the message.
  • Choose Natural Earth when the entire world must remain visible in a balanced editorial frame.

Continue with projections and zoom for panning, zoom anchoring, latitude windows, the antimeridian, and coordinate conversion. For performance measurements across different libraries, use the reproducible globe benchmark.

Before deploying CanvasGlobe in a public production project, purchase a license and add the provided license key.