Area charts
Show magnitude or composition across an ordered category.
Use area when filled magnitude matters. Multiple series stack by design, making area useful for totals and composition over an ordered dimension. Prefer a line chart when precise comparison between overlapping series matters more than volume.
Stacked composition
The series order controls stack order, color identity, and end-label order. Use an explicit series order when that order is meaningful or must remain stable across updates.
Single area
A single-series area emphasizes cumulative magnitude or volume. Because the fill encodes distance from the baseline, the value scale stays linear and its inferred domain includes zero.
Do not use area to exaggerate small changes by clipping the baseline. An explicit compatible domain is preserved, but validation emits a warning when it excludes zero so the decision must be reviewed rather than hidden in theme behavior.
End labels
Area labels may sit at series ends or label all, ends, or extrema points. End labels may include series, value, and percent; point labels may include category/value semantics or read a dedicated field. Point labels sit above the area surface by default and may use position: "side". End labels are especially useful when a legend would force the reader to look back and forth.
{
"labels": {
"series": { "content": ["series", "value", "percent"] }
}
}Curve and stroke
Choose linear, monotone, or step. The curve defaults to the selected theme. Omit stroke to keep the area fill-only; set a positive stroke.width only when a stroke carries deliberate emphasis. The stroke follows the area color by default and traces the data boundary rather than the closing edges to the baseline; set stroke.color when the boundary needs an independent fixed color.
Draw one series as a line
line.series names series that are drawn as a line on the same value scale instead of as filled areas. Use it for a benchmark, a total, or a co-measure that deserves different visual weight.
{ "line": { "series": ["Active paying"], "curve": "monotone" } }The named series leave the stack and read against the shared value axis; the rest keep their geometry. curve, stroke.width, points, and labels style the line and reuse the line vocabulary, while color still comes from the existing series channel, so the legend shows a line glyph for a promoted series and a filled swatch for the others.
series must name at least one member of the effective series domain and may not name every series – that intent is a line chart. Promotion needs an effective series and is unavailable on ranged filled areas and on percent-normalized arrangements, where a raw-value line against a 0–100% axis would be meaningless.
References and annotations
Area accepts fixed category reference lines and fixed or calculated value references. An annotation attached to a category and series resolves to that band's compiled stacked edge and follows legend filtering; { type: "coordinate", category, value } remains available for an exact position. A calculated value reference can follow visible legend state or retain all data.
Properties
| Field | Type | Default | Description |
|---|---|---|---|
version | "2026-09-26" | – | Required. The chart config version. |
type | ChartType | – | Required. The chart family. |
title | string | – | Chart title. |
subtitle | string | – | Supporting text beneath the title. |
caption | string | – | Caption below the chart for a source, methodology note, or date. |
accessibilityDescription | string | – | Accessible description of the chart's meaning. |
headerAlign | "start" | "center" | "end" | theme default | Horizontal alignment for the title and subtitle. Omit it to use the selected theme's alignment. |
locale | string | "en-US" | Locale identifier accepted by JavaScript Intl and associated with the chart content, such as en, pl, or zh-Hant. |
theme | ThemeName | "editorial" | One of 6 built-in themes. |
themeOverrides | ThemeOverrides | – | Override individual theme properties. |
category | CategoryRole | – | Required. Category field, scale, and format. |
values | ValuesRole | – | Required. Long, wide, or count value roles. |
order | CategoryOrder | – | Category ordering policy. |
arrangement | { type: "stacked"; normalization?: "percent" } | stacked | Stacked placement; percent normalization requires series values. Grouped placement is not supported. |
color | CategoricalColor | – | Categorical color preferences. |
categoryAxis | boolean | AxisOptions | – | True shows the category axis, false hides it, and an options object shows it with those settings. Omit for defaults. |
plotBorder | boolean | theme default | Full plot border, independent of axis visibility. |
valueAxis | boolean | AxisOptions | – | True shows the value axis, false hides it, and an options object shows it with those settings. Omit for defaults. |
annotations | CartesianAnnotation[] | – | Positioned annotations. |
references | CategoricalReference[] | – | Reference lines. |
curve | "linear" | "monotone" | "step" | theme default | Area interpolation. |
stroke | Stroke | – | Optional area boundary color and width. |
labels | AreaLabels | – | Series-end and point labels. |
line | PromotedLine | – | Draw named series as a line on the same value scale instead of bars or areas. "series" is a non-empty subset of the effective series domain and may not name every series; use type "line" for that. Unavailable on ranged bars and on percent-normalized arrangements. |