# Class: DatasetController<TType, TElement, TDatasetElement, TParsedData>

# Type parameters

Name Type
TType extends ChartType = ChartType
TElement extends Element = Element
TDatasetElement extends Element = Element
TParsedData ParsedDataType<TType>

# Hierarchy

# Constructors

# constructor

new DatasetController<TType, TElement, TDatasetElement, TParsedData>(chart, datasetIndex)

# Type parameters

Name Type
TType extends keyof ChartTypeRegistry = keyof ChartTypeRegistry
TElement extends default<AnyObject, AnyObject, TElement> = default<AnyObject, AnyObject>
TDatasetElement extends default<AnyObject, AnyObject, TDatasetElement> = default<AnyObject, AnyObject>
TParsedData ParsedDataType<TType>

# Parameters

Name Type
chart Chart<keyof ChartTypeRegistry, (number | [number, number] | Point | BubbleDataPoint)[], unknown>
datasetIndex number

# Defined in

types/index.d.ts:588 (opens new window)

# Properties

# _cachedMeta

Readonly _cachedMeta: ChartMeta<TType, TElement, TDatasetElement>

# Defined in

types/index.d.ts:592 (opens new window)


# chart

Readonly chart: Chart<keyof ChartTypeRegistry, (number | [number, number] | Point | BubbleDataPoint)[], unknown>

# Defined in

types/index.d.ts:590 (opens new window)


# enableOptionSharing

enableOptionSharing: boolean

# Defined in

types/index.d.ts:593 (opens new window)


# index

Readonly index: number

# Defined in

types/index.d.ts:591 (opens new window)


# supportsDecimation

supportsDecimation: boolean

# Defined in

types/index.d.ts:597 (opens new window)

# Methods

# addElements

addElements(): void

# Returns

void

# Defined in

types/index.d.ts:613 (opens new window)


# applyStack

Protected applyStack(scale, parsed): number

# Parameters

Name Type
scale Scale<CoreScaleOptions>
parsed unknown[]

# Returns

number

# Defined in

types/index.d.ts:649 (opens new window)


# buildOrUpdateElements

buildOrUpdateElements(resetNewElements?): void

# Parameters

Name Type
resetNewElements? boolean

# Returns

void

# Defined in

types/index.d.ts:614 (opens new window)


# configure

configure(): void

# Returns

void

# Defined in

types/index.d.ts:611 (opens new window)


# draw

draw(): void

# Returns

void

# Defined in

types/index.d.ts:606 (opens new window)


# getAllParsedValues

getAllParsedValues(scale): number[]

# Parameters

Name Type
scale Scale<CoreScaleOptions>

# Returns

number[]

# Defined in

types/index.d.ts:600 (opens new window)


# getDataset

getDataset(): ChartDataset<keyof ChartTypeRegistry, (number | [number, number] | Point | BubbleDataPoint)[]>

# Returns

ChartDataset<keyof ChartTypeRegistry, (number | [number, number] | Point | BubbleDataPoint)[]>

# Defined in

types/index.d.ts:608 (opens new window)


# getLabelAndValue

Protected getLabelAndValue(index): Object

# Parameters

Name Type
index number

# Returns

Object

Name Type
label string
value string

# Defined in

types/index.d.ts:601 (opens new window)


# getMaxOverflow

Protected getMaxOverflow(): number | boolean

# Returns

number | boolean

# Defined in

types/index.d.ts:605 (opens new window)


# getMeta

getMeta(): ChartMeta<TType, TElement, TDatasetElement>

# Returns

ChartMeta<TType, TElement, TDatasetElement>

# Defined in

types/index.d.ts:609 (opens new window)


# getMinMax

Protected getMinMax(scale, canStack?): Object

# Parameters

Name Type
scale Scale<CoreScaleOptions>
canStack? boolean

# Returns

Object

Name Type
max number
min number

# Defined in

types/index.d.ts:656 (opens new window)


# getParsed

Protected getParsed(index): TParsedData

# Parameters

Name Type
index number

# Returns

TParsedData

# Defined in

types/index.d.ts:648 (opens new window)


# getScaleForId

getScaleForId(scaleID): Scale<CoreScaleOptions>

# Parameters

Name Type
scaleID string

# Returns

Scale<CoreScaleOptions>

# Defined in

types/index.d.ts:610 (opens new window)


# getSharedOptions

Protected getSharedOptions(options): AnyObject

Utility for checking if the options are shared and should be animated separately.

# Parameters

Name Type
options AnyObject

# Returns

AnyObject

# Defined in

types/index.d.ts:623 (opens new window)


# getStyle

getStyle(index, active): AnyObject

# Parameters

Name Type
index number
active boolean

# Returns

AnyObject

# Defined in

types/index.d.ts:616 (opens new window)


# includeOptions

Protected includeOptions(mode, sharedOptions): boolean

Utility for determining if options should be included in the updated properties

# Parameters

Name Type
mode "none" | "hide" | "show" | "default" | "active" | "resize" | "reset"
sharedOptions AnyObject

# Returns

boolean

# Defined in

types/index.d.ts:628 (opens new window)


# initialize

initialize(): void

# Returns

void

# Defined in

types/index.d.ts:612 (opens new window)


# linkScales

linkScales(): void

# Returns

void

# Defined in

types/index.d.ts:599 (opens new window)


# parse

parse(start, count): void

# Parameters

Name Type
start number
count number

# Returns

void

# Defined in

types/index.d.ts:644 (opens new window)


# parseArrayData

Protected parseArrayData(meta, data, start, count): AnyObject[]

# Parameters

Name Type
meta ChartMeta<TType, TElement, TDatasetElement>
data AnyObject[]
start number
count number

# Returns

AnyObject[]

# Defined in

types/index.d.ts:646 (opens new window)


# parseObjectData

Protected parseObjectData(meta, data, start, count): AnyObject[]

# Parameters

Name Type
meta ChartMeta<TType, TElement, TDatasetElement>
data AnyObject[]
start number
count number

# Returns

AnyObject[]

# Defined in

types/index.d.ts:647 (opens new window)


# parsePrimitiveData

Protected parsePrimitiveData(meta, data, start, count): AnyObject[]

# Parameters

Name Type
meta ChartMeta<TType, TElement, TDatasetElement>
data AnyObject[]
start number
count number

# Returns

AnyObject[]

# Defined in

types/index.d.ts:645 (opens new window)


# removeHoverStyle

removeHoverStyle(element, datasetIndex, index): void

# Parameters

Name Type
element TElement
datasetIndex number
index number

# Returns

void

# Defined in

types/index.d.ts:641 (opens new window)


# reset

reset(): void

# Returns

void

# Defined in

types/index.d.ts:607 (opens new window)


# resolveDataElementOptions

Protected resolveDataElementOptions(index, mode): AnyObject

# Parameters

Name Type
index number
mode "none" | "hide" | "show" | "default" | "active" | "resize" | "reset"

# Returns

AnyObject

# Defined in

types/index.d.ts:618 (opens new window)


# resolveDatasetElementOptions

Protected resolveDatasetElementOptions(mode): AnyObject

# Parameters

Name Type
mode "none" | "hide" | "show" | "default" | "active" | "resize" | "reset"

# Returns

AnyObject

# Defined in

types/index.d.ts:617 (opens new window)


# setHoverStyle

setHoverStyle(element, datasetIndex, index): void

# Parameters

Name Type
element TElement
datasetIndex number
index number

# Returns

void

# Defined in

types/index.d.ts:642 (opens new window)


# update

update(mode): void

# Parameters

Name Type
mode "none" | "hide" | "show" | "default" | "active" | "resize" | "reset"

# Returns

void

# Defined in

types/index.d.ts:603 (opens new window)


# updateElement

Protected updateElement(element, index, properties, mode): void

Utility for updating an element with new properties, using animations when appropriate.

# Parameters

Name Type
element TElement | TDatasetElement
index number
properties AnyObject
mode "none" | "hide" | "show" | "default" | "active" | "resize" | "reset"

# Returns

void

# Defined in

types/index.d.ts:634 (opens new window)


# updateElements

updateElements(elements, start, count, mode): void

# Parameters

Name Type
elements TElement[]
start number
count number
mode "none" | "hide" | "show" | "default" | "active" | "resize" | "reset"

# Returns

void

# Defined in

types/index.d.ts:602 (opens new window)


# updateIndex

updateIndex(datasetIndex): void

# Parameters

Name Type
datasetIndex number

# Returns

void

# Defined in

types/index.d.ts:604 (opens new window)


# updateRangeFromParsed

Protected updateRangeFromParsed(range, scale, parsed, stack): void

# Parameters

Name Type
range Object
range.max number
range.min number
scale Scale<CoreScaleOptions>
parsed unknown[]
stack string | boolean

# Returns

void

# Defined in

types/index.d.ts:650 (opens new window)


# updateSharedOptions

Protected updateSharedOptions(sharedOptions, mode, newOptions): void

Utility to animate the shared options, that are potentially affecting multiple elements.

# Parameters

Name Type
sharedOptions AnyObject
mode "none" | "hide" | "show" | "default" | "active" | "resize" | "reset"
newOptions AnyObject

# Returns

void

# Defined in

types/index.d.ts:640 (opens new window)