# 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:628 (opens new window)

# Properties

# _cachedMeta

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

# Defined in

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


# chart

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

# Defined in

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


# enableOptionSharing

• enableOptionSharing: boolean

# Defined in

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


# index

• Readonly index: number

# Defined in

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


# supportsDecimation

• supportsDecimation: boolean

# Defined in

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

# Methods

# addElements

▸ addElements(): void

# Returns

void

# Defined in

types/index.d.ts:653 (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:689 (opens new window)


# buildOrUpdateElements

▸ buildOrUpdateElements(resetNewElements?): void

# Parameters

Name Type
resetNewElements? boolean

# Returns

void

# Defined in

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


# configure

▸ configure(): void

# Returns

void

# Defined in

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


# draw

▸ draw(): void

# Returns

void

# Defined in

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


# getAllParsedValues

▸ getAllParsedValues(scale): number[]

# Parameters

Name Type
scale Scale<CoreScaleOptions>

# Returns

number[]

# Defined in

types/index.d.ts:640 (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:648 (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:641 (opens new window)


# getMaxOverflow

▸ Protected getMaxOverflow(): number | boolean

# Returns

number | boolean

# Defined in

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


# getMeta

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

# Returns

ChartMeta<TType, TElement, TDatasetElement>

# Defined in

types/index.d.ts:649 (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:696 (opens new window)


# getParsed

▸ Protected getParsed(index): TParsedData

# Parameters

Name Type
index number

# Returns

TParsedData

# Defined in

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


# getScaleForId

▸ getScaleForId(scaleID): Scale<CoreScaleOptions>

# Parameters

Name Type
scaleID string

# Returns

Scale<CoreScaleOptions>

# Defined in

types/index.d.ts:650 (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:663 (opens new window)


# getStyle

▸ getStyle(index, active): AnyObject

# Parameters

Name Type
index number
active boolean

# Returns

AnyObject

# Defined in

types/index.d.ts:656 (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:668 (opens new window)


# initialize

▸ initialize(): void

# Returns

void

# Defined in

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


# linkScales

▸ linkScales(): void

# Returns

void

# Defined in

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


# parse

▸ parse(start, count): void

# Parameters

Name Type
start number
count number

# Returns

void

# Defined in

types/index.d.ts:684 (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:686 (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:687 (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:685 (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:681 (opens new window)


# reset

▸ reset(): void

# Returns

void

# Defined in

types/index.d.ts:647 (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:658 (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:657 (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:682 (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:643 (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:674 (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:642 (opens new window)


# updateIndex

▸ updateIndex(datasetIndex): void

# Parameters

Name Type
datasetIndex number

# Returns

void

# Defined in

types/index.d.ts:644 (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:690 (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:680 (opens new window)