---
title: "Upgrade to AG Charts 14"
framework: javascript
version: "14.1.0"
---

# Upgrade to AG Charts 14

## What's New

See the [release post](https://blog.ag-grid.com/whats-new-in-ag-charts-14/) for feature highlights of what's new in this major version.

Users of integrated charting on AG Grid, should refer to this migration guide when upgrading to AG Grid 36.1.

## Documentation

[See AG Charts 14.0 Documentation](https://www.ag-grid.com/charts/archive/14.0.2/documentation)

## Breaking Changes

The full list of breaking changes across all features for version 14.0.

**Breaking Changes:**

This release includes the following breaking changes:

### Compatibility

- The minimum supported version of TypeScript is now 5.8.

### Module Registration

- `CrossLinesModule` and `PolarCrossLinesModule` must be explicitly registered when not using `AllCommunityModule` or `AllEnterpriseModule`.

### Cross Lines

- `crossLines` entries are now a discriminated union on `type`, with `value` required when `type: 'line'` and `range` required when `type: 'range'`.

### Bubble Series

- `size` is removed from `AgBubbleSeriesOptions`. Use `minSize` instead.
- `domain` is removed from `AgBubbleSeriesOptions`. Use `sizeDomain` instead.
- `size` is renamed to `minSize` on `AgBubbleSeriesStylerParams` and `AgBubbleSeriesStylerResult`.

### Waterfall Series

- Callbacks now receive `datum: undefined` for total and subtotal bars. Use `params.itemType` to identify `'total'` and `'subtotal'` bars.
- `label.formatter` for subtotal bars now receives `itemType: 'subtotal'` instead of `'total'`.

### Histogram Series

- `datum` is now `undefined` for all callbacks on the histogram series. The bin source rows are exposed as `datums: TDatum[]`.
- `xRange` and `domain` are removed from `tooltip.renderer` params. Use `binRange` and `datums` instead.

### Numeric and Time-Axis Value Types

- Several numeric output types are widened from number to the new `AgNumericValue (number | bigint)` alias; time axes use the companion `AgTimeValue (Date | number | bigint | string)`.
  - the value in a number formatter
  - visibleDomain in an axis label.formatter
  - binRange and aggregatedValue in histogram tooltip/label callbacks
- Initial zoom state (zoom.rangeX/Y.start/end) now also accepts a serialised-bigint form for full-precision restore.

### Theme Params

- `axisColor` is removed. Use `axisLineColor` instead.
- `separationLinesColor` is removed. Use `groupedCategoryLineColor` instead.

### Range Buttons

- `AgRangesButtonValueFunction` now receives all arguments within a single params object.

### Padding

- `paddingX` and `paddingY` are removed from the legend item. Use `padding (number | PaddingOptions)` to set left/right and top/bottom spacing instead.
- `AgChartPaddingOptions` and `AgNavigatorMiniChartPadding` are removed. Use `Padding` (`number | PaddingOptions`) instead.

## Behaviour Changes

The full list of behaviour changes across all features for version 14.0.

**Behaviour Changes:**

This release includes the following behaviour changes:

### Theme Defaults

- The default `fontFamily` has changed to the IBM Plex Sans stack (`"IBM Plex Sans", -apple-system, "system-ui", ...`).
- The default `focusShadow` has changed to a 50% opacity accent colour.
- The default `tooltip.position.offset` has increased from `8` to `12` for `anchorTo: 'pointer'` and `anchorTo: 'node'`.
- The default `tooltip.position.placement` has changed from `'top'` to `['top', 'bottom', 'left', 'right']` for `anchorTo: 'pointer'` and `anchorTo: 'node'`.
- The default Map Marker `size` has changed from `6` to `7`.
- The default value of `scrollbar.enableSeriesAreaScrolling` has changed from `false` to `true`.

### Bubble Series

- Out-of-domain values now clamp to `[minSize, maxSize]` instead of extrapolating beyond the bounds.
- Setting an explicit minimum larger than an explicit maximum now emits a warning and falls back to theme defaults. Use `sizeDomain: [max, min]` to reverse the size scale.

### `itemId`

- The generated `itemId` on Sunburst and Treemap series has changed from a string to a number.
- Generated selection `itemId` values are not guaranteed to be stable across versions. Set `dataIdKey` if you depend on stable identifiers.

### Time Axis Labels

- On time axes, an explicitly enabled parent label tier (`parentLevel.label`) now renders even when `label.enabled: false`.

## Removal of Deprecated APIs

The following APIs have been deprecated since version 13 and have now been removed.

**Removed Deprecated APIs:**

- `colorRange` is removed from `heatmap`, `treemap`, `sunburst`, `map-marker` and `map-shape` series. Use `colorScale.fills` instead.

## Deprecations

There are no deprecations in AG Charts version 14.0.

## Changes List

[See the full changelog for v14.0.0](https://www.ag-grid.com/charts/changelog/?fixVersion=14.0.0)
