Recipe Index

Named, copy-paste recipes for the charts people ask for by name. Each links to a complete, compiled example — the image you see is the output of the code right below it — and to the primitives it is built from.

The convenience marks (mark_violin, mark_density, mark_contour, mark_density_2d, …) are just names for common compositions, so every entry's "Built from" column shows both the mark and the primitives it expands into. If your chart is missing, build it from the Marks & Geometries vocabulary and the layer pipeline, then add it here.

Distributions

RecipeAlso known asBuilt from
Density plotKDEmark_density (transform_density + mark_area)
Density heatmap2-D KDEmark_density_2d (transform_density_2d + mark_rect)
Density contour2-D KDE iso-linesmark_contour over transform_density_2d
Cumulative densityKDE integralmark_density (cumulative)
Empirical CDFcumulative frequencytransform_window (CumeDist)
Violindensity outline, uprightmark_violin
Grouped violindodged violinmark_violin (x + color, dodge)
Faceted violinsmall multiplesmark_violin + facet
Split violinmark_violin (split)
Raincloudmark_violin + transform_quantile_box + jittered points
Ridgelinejoyplottransform_density + transform_band (split) + mark_polygon
Violin with inner boxmark_violin + transform_quantile_box
Box plotbox & whiskersmark_boxplot
Histogrammark_hist
Scattermark_point + shape/size/color
Beeswarmswarmmark_point + layout
Quasirandomdot plotmark_point + layout
Strip plotrugmark_tick
Styled stripmark_tick + configure_tick

Comparisons

RecipeAlso known asBuilt from
Bar with error barsmean ± errormark_bar + mark_errorbar
Grouped bar with error barsmark_bar + mark_errorbar + Position::dodge
Stacked barmark_bar + stack
Error barmark_errorbar
Dumbbellconnected dotmark_rule + mark_point
Lollipopmark_rule + mark_point
Range plotintervalsmark_rule (y + y2)
Waterfallrunning totalmark_bar (y2) + transform_window (CumulativeSum)
CandlestickOHLCmark_rule + mark_bar (y2)
RecipeAlso known asBuilt from
Line (multiple series)mark_line + color
Cumulative frequencymark_line
Multi-series with error barsmark_line + mark_errorbar + mark_point
Formatted axis labels$20B-stylewith_y_label_format
Slope chartmark_line + mark_point
Bump chartrankingtransform_window (Rank) + reversed axis
Area chartmark_area
Simple stacked areamark_area + stack: stacked
Normalized stacked area100% areamark_area + stack: normalize
Steamgraphstreamgraphmark_area + stack: center

Matrices & relationships

RecipeAlso known asBuilt from
Scattermark_point + shape/size/color
Categorical heatmapmark_rect
Continuous heatmap2-D histogrammark_rect + binning
Iso-lines of a gridcontour plotmark_contour (transform_contour + mark_path)
Single-colour contourmark_contour without colour-by-level
Density contours2-D KDEmark_contour over transform_density_2d

Circular

RecipeAlso known asBuilt from
Piemark_bar + CoordSystem::Polar
Donutpie + inner radius
Rosepolar barmark_bar + polar
Nightingalecoxcombmark_bar + polar

Layout & special

RecipeAlso known asBuilt from
Facet gridsmall multiplesfacet
World mapchoroplethmark_geoshape + CoordSystem::Geo

Choosing a distribution view

  • Histogram — a first, honest look at the shape.
  • Density — the same shape, smoothed; good when the distribution is interesting.
  • Box plot — compact and precise about quartiles, hides the shape.
  • Violin — the shape with quartiles available as an inner box.
  • Ridgeline — many distributions compared at once, one density per category.
  • Beeswarm / strip — every observation; good for small samples.

See Missing Values & Gaps for how each view handles nulls and gaps.

Going deeper

  • Composing Your Own — recombining the primitives into new pictures the marks do not cover.
  • Contour Plots — the marching-squares machinery and the general scalar-grid contour.
  • Transforms & Columns — the column contract of every transform used by these recipes.