Geo

canvas.geoNode

A geographic pane on the scene's canvas. Its body holds overlays — region boundaries from a built-in pack, a choropleth joined from a @data dataset, markers, great-circle arcs — and the parameters that drive them. The frame is a camera: centre (latitude first) and zoom (doubling levels; 1 fits the world's width), both animatable with !cue.to, which is the fly-to. Boundary geometry ships with the library; nothing is fetched from a tile server.

#Attributes

titleImplicit
string
Accessible title.Can be written as shorthand: canvas.geo:value
projection
enum
How the sphere lies down: equal-earth (equal-area, the world-framing default), mercator (conformal, the web-map frame — the one a great-circle arc teaches on), equirectangular (plain lat/lon), globe (the sphere itself — an orthographic view from space, the far hemisphere behind the horizon, panning a full rotation), or albers-usa — the standard United States composite, the lower 48 on an equal-area conic with Alaska (at 35% scale) and Hawaii as insets. Places stay true on the composite: the cursor over the Hawaii inset reads real Hawaiian coordinates. With no centre: authored, albers-usa frames the United States on its own.
Defaultequal-earth
centre
geo-coordinate
Also written: centerWhere the camera looks, latitude first: centre: 48.85, 2.35. Either half may be a parametised expression. Animatable: centre: 20, 0 !cue.to{50, 15}(at: 2; over: 900ms) pans the frame — write the same anchor on zoom and the two move as one fly-to. Absent is (0, 0).
Web-map doubling levels: 1 fits the world's width, each level halves the span. Animatable with !cue.to, and parametised — zoom: z rides a slider.
Default1
interactive
boolean
Let the reader explore: scroll to zoom about the cursor, drag to pan, double-click to reset — and zoom / reset controls appear in the toolbar. Exploration stays on the pane's subject: the zoom floor is the frame that fits its packs, markers and arcs, and panning cannot leave them behind. The explored camera overrides the authored one for the session.
Defaultfalse
show-graticule
boolean
Also written: graticuleDraw the latitude/longitude grid.
Defaultfalse
graticule-spacing
number
Degrees between graticule lines.
Default15
continue
reference
Inherit an earlier same-type pane's state: continue: #that-pane. The reader's explored camera and slider values carry forward.

#Allowed content

#Allowed in

#Examples

canvas.geo#world{
    region(in: world)
}(projection: equal-earth; show-graticule: true)
canvas.geo#tour{
    region(in: world)
}(
    centre: 20, 0 !cue.to{50.5, 15}(at: 1; over: 900ms)
    zoom: 1 !cue.to{4}(at: 1; over: 900ms)
)
canvas.geo#space{
    region(in: world)
    arc(from: 51.47, -0.46; to: 35.55, 139.78)
}(projection: globe; centre: 69.1, 89.8; interactive)

#Notes

  • A pane's own id is written on the node — canvas.geo#europe{} — and continue: points at it with #europe.
  • Cues wrap overlays exactly as they wrap graph marks; cue.draw traces an arc along its length.
  • The cursor's place — and the region under it — floats in the corner of the pane.