Skip to content

charton API


charton API / @chart-on/core / index / CandleSeries

Class: CandleSeries ​

Defined in: packages/core/src/series.ts:1313

An OHLC series drawn in one of the CandleStyle styles; the chart's main series is one. Create it with chart.addCandles.

Extends ​

Constructors ​

Constructor ​

new CandleSeries(host, pane, options): CandleSeries

Defined in: packages/core/src/series.ts:330

Parameters ​

host ​

SeriesHost

pane ​

Pane

The pane the series draws in; change it with chart.moveSeries.

options ​

CandleSeriesOptions

Returns ​

CandleSeries

Inherited from ​

Series.constructor

Properties ​

basePrice ​

basePrice: number | null = null

Defined in: packages/core/src/series.ts:1352

The price the baseline style split at in the last frame, or null for other styles and before the first frame.


batch ​

readonly batch: RectBatch

Defined in: packages/core/src/series.ts:1318


data ​

data: Bar[] = []

Defined in: packages/core/src/series.ts:1315


front ​

protected front: FrontChange = NO_FRONT_CHANGE

Defined in: packages/core/src/series.ts:324

How the latest history page changed the front of the data, for prependAligned.

Inherited from ​

Series.front


host ​

protected readonly host: SeriesHost

Defined in: packages/core/src/series.ts:331

Inherited from ​

Series.host


id ​

readonly id: string

Defined in: packages/core/src/series.ts:314

Inherited from ​

Series.id


isMain ​

isMain: boolean = false

Defined in: packages/core/src/series.ts:1317

True when this series defines the chart timeline.


kind ​

readonly kind: "candles" = 'candles'

Defined in: packages/core/src/series.ts:1314

Overrides ​

Series.kind


options ​

options: CandleSeriesOptions

Defined in: packages/core/src/series.ts:317

Inherited from ​

Series.options


overlayScale ​

overlayScale: PriceScale | null = null

Defined in: packages/core/src/series.ts:320

Own price scale when the series is an overlay; otherwise the pane scale is used.

Inherited from ​

Series.overlayScale


pane ​

pane: Pane

Defined in: packages/core/src/series.ts:333

The pane the series draws in; change it with chart.moveSeries.

Inherited from ​

Series.pane


rangeBuilder ​

protected readonly rangeBuilder: RangeBuilder

Defined in: packages/core/src/series.ts:322

Reused by priceRange so autoscale makes no RangeBuilder per frame.

Inherited from ​

Series.rangeBuilder


showBaseLevel ​

showBaseLevel: boolean = false

Defined in: packages/core/src/series.ts:1358

Internal

Label the base level on the price axis. The chart sets it while the series is hovered or its base handle is in use.


visible ​

visible: boolean = true

Defined in: packages/core/src/series.ts:316

Inherited from ​

Series.visible

Accessors ​

downColor ​

Get Signature ​

get downColor(): string

Defined in: packages/core/src/series.ts:1364

Returns ​

string


drawsOnGpu ​

Get Signature ​

get drawsOnGpu(): boolean

Defined in: packages/core/src/series.ts:1844

Internal

Drawn on the GPU canvas, which sits below every series drawn in 2D.

Returns ​

boolean

Overrides ​

Series.drawsOnGpu


format ​

Get Signature ​

get format(): PriceFormatter

Defined in: packages/core/src/series.ts:1376

Returns ​

PriceFormatter


formatModel ​

Get Signature ​

get formatModel(): PriceFormatModel

Defined in: packages/core/src/series.ts:1369

The format in effect: priceFormat, else precision decimals, else decimals detected from the data.

Returns ​

PriceFormatModel


hasCrosshairMarker ​

Get Signature ​

get hasCrosshairMarker(): boolean

Defined in: packages/core/src/series.ts:580

Internal

Whether drawCrosshair2D draws anything.

Returns ​

boolean

Inherited from ​

Series.hasCrosshairMarker


inAutoscale ​

Get Signature ​

get inAutoscale(): boolean

Defined in: packages/core/src/series.ts:536

False while the autoscale option leaves this series out of the fit.

Returns ​

boolean

Inherited from ​

Series.inAutoscale


locale ​

Get Signature ​

get protected locale(): Localizer

Defined in: packages/core/src/series.ts:405

The chart's number language (the localization option).

Returns ​

Localizer

Inherited from ​

Series.locale


priceFormat ​

Get Signature ​

get priceFormat(): PriceFormatModel | null

Defined in: packages/core/src/series.ts:410

The priceFormat option resolved in the chart's number language, or null when the series has none.

Returns ​

PriceFormatModel | null

Inherited from ​

Series.priceFormat


priceLineByDefault ​

Get Signature ​

get protected priceLineByDefault(): boolean

Defined in: packages/core/src/series.ts:2200

Whether the price line is on when the option is unset.

Returns ​

boolean

Overrides ​

Series.priceLineByDefault


pulse ​

Get Signature ​

get protected pulse(): PulseClock | null

Defined in: packages/core/src/series.ts:390

Internal

The last-point pulse's clock; null on a chart without the lastPointPulse() plugin.

Returns ​

PulseClock | null

Inherited from ​

Series.pulse


scale ​

Get Signature ​

get scale(): PriceScale

Defined in: packages/core/src/series.ts:441

The price scale this series is drawn against.

Returns ​

PriceScale

Inherited from ​

Series.scale


upColor ​

Get Signature ​

get upColor(): string

Defined in: packages/core/src/series.ts:1360

Returns ​

string


zIndex ​

Get Signature ​

get zIndex(): number

Defined in: packages/core/src/series.ts:349

Draw order within the pane among series drawn by the same renderer: a higher value draws on top. GPU series (candles, histograms, heatmaps, lines and areas) always draw below 2D series (curved lines, custom series, anything with renderer: 'canvas'). Equal values keep the usual order (heatmaps, then overlays and volume profiles, then the rest, each in the order added). Changing it only redraws. Default 0.

Returns ​

number

Set Signature ​

set zIndex(value): void

Defined in: packages/core/src/series.ts:353

Parameters ​
value ​

number

Returns ​

void

Inherited from ​

Series.zIndex

Methods ​

appendAligned() ​

appendAligned(): void

Defined in: packages/core/src/series.ts:1444

The main series gained a bar at the end of the timeline. Series with an incremental path align only their new items; others realign fully.

Returns ​

void

Overrides ​

Series.appendAligned


applyOptions() ​

applyOptions(partial): void

Defined in: packages/core/src/series.ts:360

Parameters ​

partial ​

Partial<O>

Returns ​

void

Inherited from ​

Series.applyOptions


closeFrom() ​

closeFrom(index): number | undefined

Defined in: packages/core/src/series.ts:1753

Close of the first bar at or after logical index (percent-scale base).

Parameters ​

index ​

number

Returns ​

number | undefined


displayedBarAt() ​

displayedBarAt(index): Bar | undefined

Defined in: packages/core/src/series.ts:1712

The bar as drawn at logical index (Heikin Ashi applied, live bar tweened), or undefined.

Parameters ​

index ​

number

Returns ​

Bar | undefined


dispose() ​

dispose(): void

Defined in: packages/core/src/series.ts:1816

Free this series' GPU objects; it is leaving the chart.

Returns ​

void

Overrides ​

Series.dispose


draw2D() ​

draw2D(ctx, env): void

Defined in: packages/core/src/series.ts:2058

Internal

Paint this series' canvas part for the pane.

Parameters ​

ctx ​

CanvasRenderingContext2D

env ​

PaneEnv

Returns ​

void

Overrides ​

Series.draw2D


drawBelow() ​

drawBelow(_ctx, _env): void

Defined in: packages/core/src/series.ts:574

Internal

Paint behind every series and the GPU layer, clipped to the pane, e.g. background shading.

Parameters ​

_ctx ​

CanvasRenderingContext2D

_env ​

PaneEnv

Returns ​

void

Inherited from ​

Series.drawBelow


drawCrosshair2D() ​

drawCrosshair2D(_ctx, _env): void

Defined in: packages/core/src/series.ts:589

Internal

A marker at the crosshair (env.crosshair), on the crosshair layer: it redraws on every crosshair move, draw2D does not.

Parameters ​

_ctx ​

CanvasRenderingContext2D

_env ​

PaneEnv

Returns ​

void

Inherited from ​

Series.drawCrosshair2D


drawGL() ​

drawGL(r, env): void

Defined in: packages/core/src/series.ts:1848

Internal

Record this series' GPU draws for the pane.

Parameters ​

r ​

RenderBackend

env ​

PaneEnv

Returns ​

void

Overrides ​

Series.drawGL


drawnBarAt() ​

drawnBarAt(index): DrawnBar | undefined

Defined in: packages/core/src/series.ts:1722

The prices the style draws at logical index, for hit-testing and snapping: all four for candles and bars, no open for HLC styles, high and low for high-low bars, and only the close for line-like styles.

Parameters ​

index ​

number

Returns ​

DrawnBar | undefined


firstValueFrom() ​

firstValueFrom(index, field?): number | undefined

Defined in: packages/core/src/series.ts:1757

First value at or after logical index: the base of percent and indexed scales. field asks for the bar's open; series without one give their value.

Parameters ​

index ​

number

field? ​

"close" | "open"

Returns ​

number | undefined

Overrides ​

Series.firstValueFrom


fitRange() ​

fitRange(from, to): [number, number] | null

Defined in: packages/core/src/series.ts:545

The range this series adds to its scale's autoscale: priceRange passed through the autoscale option. A throwing function is reported once and the series fits its values meanwhile; a non-finite result adds nothing.

Parameters ​

from ​

number

to ​

number

Returns ​

[number, number] | null

Inherited from ​

Series.fitRange


followMain() ​

followMain(_bars, _kind, _added?): void

Defined in: packages/core/src/series.ts:488

Re-derive the data from the main bars when the series has a follow option. On 'prepend', added is the number of bars that now lead bars.

Parameters ​

_bars ​

readonly Bar[]

_kind ​

FollowKind

_added? ​

number

Returns ​

void

Inherited from ​

Series.followMain


formatValue() ​

formatValue(value): string

Defined in: packages/core/src/series.ts:431

Label text for a value: priceFormat when set, else a format option you passed, else the pane scale's format (see scaleFormat) for a series on that scale, else compact.

Parameters ​

value ​

number

Returns ​

string

Inherited from ​

Series.formatValue


groupAt() ​

groupAt(index): { bar: Bar | null; count: number; endTime: number; prevClose: number; time: number; } | undefined

Defined in: packages/core/src/series.ts:2041

The bucket holding logical index while the view groups bars: its bar, the close before it, and its first and last bar time and bar count. Undefined when the view is not grouped.

Parameters ​

index ​

number

Returns ​

{ bar: Bar | null; count: number; endTime: number; prevClose: number; time: number; } | undefined


labelValueAt() ​

protected labelValueAt(i): LastValue | null

Defined in: packages/core/src/series.ts:2183

The label value of data item i, ignoring lastValueLabel; for the price line.

Parameters ​

i ​

number

Returns ​

LastValue | null

Overrides ​

Series.labelValueAt


lastIndexAtOrBefore() ​

lastIndexAtOrBefore(index): number

Defined in: packages/core/src/series.ts:2196

Internal

Data index of the newest item at or before logical index on the time axis (Infinity: the newest item), or -1.

Parameters ​

index ​

number

Returns ​

number

Overrides ​

Series.lastIndexAtOrBefore


lastValue() ​

lastValue(): LastValue | null

Defined in: packages/core/src/series.ts:605

The newest value's price-axis label while lastValueLabel is on.

Returns ​

LastValue | null

Inherited from ​

Series.lastValue


lastValues() ​

lastValues(): LastValue[]

Defined in: packages/core/src/series.ts:2206

The last value, then the base level while it is shown (see showBaseLevel).

Returns ​

LastValue[]

Overrides ​

Series.lastValues


legend() ​

legend(index, view?): LegendEntry | null

Defined in: packages/core/src/series.ts:2160

Legend row at logical index; view is the chart's legend mode (candles also read showChange).

Parameters ​

index ​

number

view? ​

LegendView = FULL_VIEW

Returns ​

LegendEntry | null

Overrides ​

Series.legend


prependAligned() ​

prependAligned(bars): void

Defined in: packages/core/src/series.ts:1473

The main series gained bars older bars at the front of the timeline (a history page), so every timeline index grew by bars. Series with an incremental path shift their alignment and align and write only the new items; others realign fully.

Parameters ​

bars ​

number

Returns ​

void

Overrides ​

Series.prependAligned


prependBars() ​

prependBars(bars): boolean

Defined in: packages/core/src/series.ts:1455

Internal

Put bars, all older than the first bar, in front of it. The main series then extends the timeline at the front, which calls prependAligned on every series. Returns false, changing nothing, when there is no first bar or the bars do not all sit before it: setData then.

Parameters ​

bars ​

readonly Bar[]

Returns ​

boolean


priceLine() ​

priceLine(visibleTo): SeriesPriceLine | null

Defined in: packages/core/src/series.ts:638

Where this series' price line sits, given the newest visible logical index; null when it is off.

Parameters ​

visibleTo ​

number

Returns ​

SeriesPriceLine | null

Inherited from ​

Series.priceLine


priceLines() ​

priceLines(visibleTo): SeriesPriceLine[]

Defined in: packages/core/src/series.ts:647

Internal

The price lines drawn this frame: the series' own, or one per plot for an indicator.

Parameters ​

visibleTo ​

number

Returns ​

SeriesPriceLine[]

Inherited from ​

Series.priceLines


priceRange() ​

priceRange(from, to, positiveOnly?): [number, number] | null

Defined in: packages/core/src/series.ts:1767

Min/max over visible logical indices for autoscale, or null. With positiveOnly (the default on a log scale) values at or below zero are left out.

Parameters ​

from ​

number

to ​

number

positiveOnly? ​

boolean = ...

Returns ​

[number, number] | null

Overrides ​

Series.priceRange


pulseFor() ​

protected pulseFor(option): PulseClock | null

Defined in: packages/core/src/series.ts:396

Internal

The clock to draw pulse option with; null without the plugin, which development builds say once.

Parameters ​

option ​

LastPointPulse | undefined

Returns ​

PulseClock | null

Inherited from ​

Series.pulseFor


realign() ​

realign(): void

Defined in: packages/core/src/series.ts:494

Recompute timeline indices after main data changes.

Returns ​

void

Inherited from ​

Series.realign


rebuild() ​

rebuild(): void

Defined in: packages/core/src/series.ts:1560

Rebuild GPU/CPU caches from data, options and theme.

Returns ​

void

Overrides ​

Series.rebuild


refollow() ​

protected refollow(): void

Defined in: packages/core/src/series.ts:491

The follow option changed: map the main bars again, or drop the derived points when it was removed.

Returns ​

void

Inherited from ​

Series.refollow


setBarColors() ​

setBarColors(owner, at, from?): void

Defined in: packages/core/src/series.ts:1652

Internal

Recolour the bars with at for owner (null stops it) and rewrite them from data index from on.

Parameters ​

owner ​

object

at ​

((i) => string | undefined) | null

from? ​

number = 0

Returns ​

void


setData() ​

setData(bars, options?): void

Defined in: packages/core/src/series.ts:1392

Parameters ​

bars ​

Bar[]

options? ​

SetDataOptions = {}

Returns ​

void


setVisible() ​

setVisible(visible): void

Defined in: packages/core/src/series.ts:477

Parameters ​

visible ​

boolean

Returns ​

void

Inherited from ​

Series.setVisible


step() ​

step(dt): boolean

Defined in: packages/core/src/series.ts:1524

Advance per-series animations by dt ms; true while still animating.

Parameters ​

dt ​

number

Returns ​

boolean

Overrides ​

Series.step


stepOverlay() ​

stepOverlay(dt): boolean

Defined in: packages/core/src/series.ts:1519

Advance animations drawn only on the overlay (such as the last-point pulse) by dt ms, after the frame drew; true when the overlay needs another frame.

Parameters ​

dt ​

number

Returns ​

boolean

Overrides ​

Series.stepOverlay


update() ​

update(bar): void

Defined in: packages/core/src/series.ts:1410

Replace the last bar (same time) or append a newer one.

Parameters ​

bar ​

Bar

Returns ​

void