Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Flow Map 3D

Signature

sp.flow_map3d(title, labels=None, edges_i=None, edges_j=None, edges_w=None, lats=None, lons=None, *, map="world", region="", variant="arc", orientation3d="iso", scene="default", theme="none", zone=None, max_points=None, bg_color="#1a1a2e", width=1200, height=600, x_label="", y_label="", z_label="", **kwargs) -> Chart

Aliases: sp.build_flow_map3d_chart(), sp.flow_map_3d(), sp.flow_map3d_chart(), sp.flowmap3d().

Description

sp.flow_map3d() is the 3D twin of sp.flow_map(): all 6 flow-map variants share the same 3D form, selected with the same variant keyword. Every node (from labels matched against the map region set, or straight from lats/lons) sits at its geographic position; every edge rises as an arc between its two nodes, thickness and tone following its own weight. track is the one exception: with no edges_i/edges_j at all, its lats/lons instead read as a single connected path visited in order, one segment per consecutive pair.

Variants

VariantAliasesUses3D form
arcbasic, default, curved, great_circlelabels, edges_i, edges_j, edges_wOne marker per node, one weighted arc per edge.
straightline, directlabels, edges_i, edges_j, edges_wThe same arcs, thinner and understated.
animateddashed, moving, flow_dashlabels, edges_i, edges_j, edges_wThe same arcs as arc; the 2D chart’s moving-dash animation has no separate 3D form.
ribbontapered, band, riverlabels, edges_i, edges_j, edges_wThe same arcs, visibly thicker.
trackstorm_track, path_track, hurricanelats, lonsNo edge list at all: lats/lons visited in order become one connected, weighted path.
range_ringsdistance_rings, radar_rings, buffer_ringslabels, edges_i, edges_j, edges_wThe same arcs as arc; the 2D chart’s concentric distance rings have no separate 3D form.

Data

labels names each node, edges_i/edges_j/edges_w give the source/target/weight of every arc; track instead reads lats/lons (and field for per-segment weight) as one ordered path.

3D planes

The viewpoint is independent from the variant: orientation3d picks the initial camera plane and applies to every variant; the view always stays draggable.

orientation3d="iso" — Isometric three-quarter view (default).
orientation3d="horizontal" — Side-on view, almost at floor level.
orientation3d="vertical" — Top-down view from above.
orientation3d="front" — Front elevation, nearly flat.

3D scenes

scene swaps the environment the columns are drawn in and applies to every variant and every plane.

scene="default" — Each series keeps its own categorical palette color, rendered as shaded 3D bars on a flat grid.
scene="terrain" — The data is resampled onto a dense grid and rendered as hundreds of thin colormap-colored columns, forming a continuous mountain-of-bars terrain.
scene="tower" — The data is resampled onto a dense field of round skyscraper-like towers instead of boxes, for a city-skyline reading of magnitude.
scene="radial" — The data is resampled onto a dense polar grid of rings and wedges radiating from the center, like a 3D radar/sonar sweep of the value field.
scene="podium" — The data is resampled onto a dense grid and quantized into stepped terrace levels, like a rice-terrace contour map, to read value bands at a glance.

Themes

theme restyles the whole canvas (colour grade and glow) and applies to every variant, scene and plane.

theme="deluxe"
theme="prism"
theme="aurora"
theme="inferno"
theme="frost"
theme="glow"
theme="glass"
theme="neon"
theme="cosmic"

Auto-scaling zone

The 3D zone (floor, walls, axes and camera) scales to the elements: its length, width and height follow the extents of the drawn blocks, a minimum floor depth keeps single rows readable, wide scenes are drawn flatter and the camera frames the whole box. The axis ticks read the real data range. Pass zone=[x, y, z] to force the proportions of the box instead; the longest side is normalised to 1.

Parameters

Returns

Chart object with an .html property and a .show() method.