# 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:598

# Properties

# _cachedMeta

• Readonly _cachedMeta: ChartMeta<TType, TElement, TDatasetElement>

# Defined in

types/index.d.ts:602


# chart

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

# Defined in

types/index.d.ts:600


# enableOptionSharing

• enableOptionSharing: boolean

# Defined in

types/index.d.ts:603


# index

• Readonly index: number

# Defined in

types/index.d.ts:601


# supportsDecimation

• supportsDecimation: boolean

# Defined in

types/index.d.ts:607

# Methods

# addElements

▸ addElements(): void

# Returns

void

# Defined in

types/index.d.ts:623


# applyStack

▸ Protected applyStack(scale, parsed): number

# Parameters

Name Type
scale Scale<CoreScaleOptions>
parsed unknown[]

# Returns

number

# Defined in

types/index.d.ts:659


# buildOrUpdateElements

▸ buildOrUpdateElements(resetNewElements?): void

# Parameters

Name Type
resetNewElements? boolean

# Returns

void

# Defined in

types/index.d.ts:624


# configure

▸ configure(): void

# Returns

void

# Defined in

types/index.d.ts:621


# draw

▸ draw(): void

# Returns

void

# Defined in

types/index.d.ts:616


# getAllParsedValues

▸ getAllParsedValues(scale): number[]

# Parameters

Name Type
scale Scale<CoreScaleOptions>

# Returns

number[]

# Defined in

types/index.d.ts:610


# 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:618


# getLabelAndValue

▸ Protected getLabelAndValue(index): Object

# Parameters

Name Type
index number

# Returns

Object

Name Type
label string
value string

# Defined in

types/index.d.ts:611


# getMaxOverflow

▸ Protected getMaxOverflow(): number | boolean

# Returns

number | boolean

# Defined in

types/index.d.ts:615


# getMeta

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

# Returns

ChartMeta<TType, TElement, TDatasetElement>

# Defined in

types/index.d.ts:619


# 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:666


# getParsed

▸ Protected getParsed(index): TParsedData

# Parameters

Name Type
index number

# Returns

TParsedData

# Defined in

types/index.d.ts:658


# getScaleForId

▸ getScaleForId(scaleID): Scale<CoreScaleOptions>

# Parameters

Name Type
scaleID string

# Returns

Scale<CoreScaleOptions>

# Defined in

types/index.d.ts:620


# 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:633


# getStyle

▸ getStyle(index, active): AnyObject

# Parameters

Name Type
index number
active boolean

# Returns

AnyObject

# Defined in

types/index.d.ts:626


# 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:638


# initialize

▸ initialize(): void

# Returns

void

# Defined in

types/index.d.ts:622


# linkScales

▸ linkScales(): void

# Returns

void

# Defined in

types/index.d.ts:609


# parse

▸ parse(start, count): void

# Parameters

Name Type
start number
count number

# Returns

void

# Defined in

types/index.d.ts:654


# 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:656


# 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:657


# 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:655


# removeHoverStyle

▸ removeHoverStyle(element, datasetIndex, index): void

# Parameters

Name Type
element TElement
datasetIndex number
index number

# Returns

void

# Defined in

types/index.d.ts:651


# reset

▸ reset(): void

# Returns

void

# Defined in

types/index.d.ts:617


# 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:628


# resolveDatasetElementOptions

▸ Protected resolveDatasetElementOptions(mode): AnyObject

# Parameters

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

# Returns

AnyObject

# Defined in

types/index.d.ts:627


# setHoverStyle

▸ setHoverStyle(element, datasetIndex, index): void

# Parameters

Name Type
element TElement
datasetIndex number
index number

# Returns

void

# Defined in

types/index.d.ts:652


# update

▸ update(mode): void

# Parameters

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

# Returns

void

# Defined in

types/index.d.ts:613


# 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:644


# 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:612


# updateIndex

▸ updateIndex(datasetIndex): void

# Parameters

Name Type
datasetIndex number

# Returns

void

# Defined in

types/index.d.ts:614


# 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:660


# 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:650