AG Studio Launch Week 🚀🚀🚀 28 Sep - 2 Oct 2026 🚀🚀🚀 Join now

JavaScript ChartsArea Series

Version 14.2.0

An Area Series is used to visualise continuous data, and is primarily used to compare multiple datasets over time.

Simple Area Copy Link

To create an Area series use the 'area' series type.

{
    series: [
        { type: 'area', xKey: 'month', yKey: 'subscriptions', yName: 'Subscriptions' },
        { type: 'area', xKey: 'month', yKey: 'services', yName: 'Services' },
        { type: 'area', xKey: 'month', yKey: 'products', yName: 'Products' },
    ],
}

In this configuration:

Multiple Area Series Copy Link

If multiple Area Series are provided, the series will be overlaid in the provided order, as seen in the above example. The default fillOpacity of an Area Series is 0.8, to allow all series to be visible.

Stacked Area Series Copy Link

Setting stacked: true will enable the series stacking behaviour.

{
    series: [
        { type: 'area', xKey: 'month', yKey: 'subscriptions', stacked: true, yName: 'Subscriptions' },
        { type: 'area', xKey: 'month', yKey: 'services', stacked: true, yName: 'Services' },
        { type: 'area', xKey: 'month', yKey: 'products', stacked: true, yName: 'Products' },
    ],
}

Normalized Area Series Copy Link

To normalize the totals of all Area Series in the chart, so that for any given category the stack will always sum to a certain value, use the normalizedTo option. It is possible to normalize to any non-zero value.

{
    series: [
        {
            type: 'area',
            xKey: 'month',
            yKey: 'subscriptions',
            stacked: true,
            normalizedTo: 1000,
            yName: 'Subscriptions',
        },
        {
            type: 'area',
            xKey: 'month',
            yKey: 'services',
            stacked: true,
            normalizedTo: 1000,
            yName: 'Services',
        },
        {
            type: 'area',
            xKey: 'month',
            yKey: 'products',
            stacked: true,
            normalizedTo: 1000,
            yName: 'Products',
        },
    ],
}

Customisation Copy Link

It is possible to customise the appearance of the line, fill, labels and markers for each series.

In this example

  • All series have a custom stroke and fill colour.
  • A custom lineDash is provided for the Subscriptions series.
  • Markers are enabled for the Services series.
  • Labels are enabled for the Products series.

Interpolation Copy Link

A straight line is used to connect points by default in the Area Series. Use the interpolation option to change the line style.

{
    series: [
        {
            // ...
            interpolation: {
                type: 'smooth',
            },
        },
    ],
}

Please see the API Reference for a list of all available interpolation options.

Missing Data Copy Link

  • Data points with a yKey value of positive or negative Infinity, null, undefined or NaN will be rendered as gaps. Set connectMissingData: true to draw a connection between points either side of a missing point.
  • Data points with invalid xKey values will be ignored.

Area Chart Examples Copy Link

See more Area Chart examples in the AG Charts Gallery.

API Reference Copy Link

Properties available on the AgAreaSeriesOptions interface.

type required 'area'
Configuration for the Area Series.
xKey required DatumKey
The key to use to retrieve x-values from the data.
yKey required DatumKey
The key to use to retrieve y-values from the data.
normalizedTo number
The number to normalise the area stacks to. For example, if `normalizedTo` is set to `100`, the stacks will all be scaled proportionally so that their total height is always 100.
stacked boolean
An option indicating if the areas should be stacked.
stackGroup string
An ID to be used to group stacked items.
id string default: auto-generated value
Primary identifier for the series. This is provided as `seriesId` in user callbacks to differentiate multiple series. Auto-generated ids are subject to future change without warning, if your callbacks need to vary behaviour by series please supply your own unique `id` value.
context ContextDefault
Context object to use in callbacks.
data DatumDefault[]
The data to use when rendering the series. If this is not supplied, data must be set on the chart instead.
visible boolean
Whether to display the series.
cursor string
The cursor to use for hovered markers. This config is identical to the CSS `cursor` property.
selection AgSelectionOptions
Configuration for data selection.
nodeClickRange InteractionRange
Range from a node that a click triggers the listener.
showInLegend boolean
Whether to include the series in the legend.
listeners AgSeriesListeners
A map of event names to event listeners.
xKeyAxis string default: 'x'
The key of the x-axis to which this series is bound.
yKeyAxis string default: 'y'
The key of the y-axis to which this series is bound.
xName string
A human-readable description of the x-values. If supplied, this will be shown in the default tooltip and passed to the tooltip renderer as one of the parameters.
yName string
A human-readable description of the y-values. If supplied, this will be shown in the default tooltip and passed to the tooltip renderer as one of the parameters.
legendItemName string
Human-readable description of the y-values. If supplied, matching items with the same value will be toggled together.
styler Styler
Function used to return formatting for entire series, based on the given parameters.
marker AgSeriesMarkerOptions
Configuration for the markers used in the series.
interpolation AgInterpolationType
Configuration for the line used in the series.
shadow AgDropShadowOptions
Configuration for the shadow used behind the chart series.
label AgAreaSeriesLabelOptions
Configuration for the labels shown on top of data points.
tooltip AgSeriesTooltip
Series-specific tooltip configuration.
connectMissingData boolean
Set to `true` to connect across missing data points.
highlight AgMultiSeriesHighlightOptions
Configuration for highlighting when a series or legend item is hovered over.
segmentation AgSeriesSegmentation
Configuration for styling series as separate segments.
stroke AgCssColorOrRef
The colour for the stroke.
strokeWidth PixelSize
The width of the stroke in pixels.
strokeOpacity Opacity
The opacity of the stroke colour.
fill AgColorType
The colour for filling shapes. A colour string, or an object for a gradient, pattern, or image fill.
fillOpacity Opacity
The opacity of the fill colour.
lineDash PixelSize[]
An array specifying the length in pixels of alternating dashes and gaps.
lineDashOffset PixelSize
The initial offset of the dashed line in pixels.
showInMiniChart boolean
Whether to include the series in the Mini Chart.