ZoomCharts Documentation

Version: 1.21.1 (2024-11-08)

ZoomCharts.Configuration.TimeChartSettingsSeriesData

Inheritance hierarchy

This type inherits from LinearChartSettingsSeriesData.

This type is implemented by TimeChartSettingsSeriesCandleStickData.

Methods

This type does not define any methods.

Properties

aggregatedValueFunction: (value: number, time: number, units: string) => number

Prepare displaying value after data aggregation.

Parameters
value: number

aggregated value that is about to be displayed

time: number

time display unit time stamp in ms

units: string

display unit

Return value
Data type: number

the value to display.

aggregation: "sum" | "min" | "max" | "first" | "last" | "avg" | "percentile" | "count"

Aggregation function to use. Used when data source does not provide data in needed display unit. Note that when avg is used, you should provide countIndex so that the calculation is correct even across multiple units.

  • "max-threshold" modes finds the largest value that is at least X% of the data range; otherwise finds the minimum. X% is set with the 'percentile' setting.
Valid values:
  • sum
  • min - threshold
  • max - threshold
  • first
  • last
  • avg
  • percentile
  • count - counts non-null values. If countIndex is specified, uses that number for each value, otherwise counts each value as 1.
aggregationFunction: (displayUnit: string, fromTime: number, toTime: number, intervalValues: Array<number>, intervalCounts: Array<number>) => [number, number]

When given, then "aggregationFunction" is called to generate the value of each displayed data point instead of the fixed function specified by "aggregation".

Parameters
displayUnit: string

Unit to aggregate to

fromTime: number

Initial time for current data item

toTime: number

Final time for current data item

intervalValues: Array<number>

All data values in the time range

intervalCounts: Array<number>

All data counts in the time range

Return value
Data type: [number, number]

Array of two elements: The aggregated value, and the aggregated count, respectively

alwaysZeroMode: boolean

If true, zero mode sets every null to zero regardless of data range. If false, zero mode only sets nulls within the data range to zero

countIndex: number

Index in the value array where the count of aggregated values are located. This is optional but should be provided if the aggregation method is avg (average) and URL or dataFunction is used to aggregate the values external to the chart because otherwise the chart will aggregate values by simply counting them. So if countIndex is not provided and there are values: [[May 1 2014, 5], [May 2 2014, 15], [June 1 2014, 20]] the aggregation to year 2014 will yield (5+15+20)/3 = 13.3 when the display unit is days but ((5+15)/2 + 20)/2 = 15 when the display unit is months.

index: number

Index in value the array where the values that will be aggregated are located. An alternative is to use valueFunction.

noDataPolicy: "join" | "skip" | "zero"

Method used to fill in time intervals that have no data. Used only for line series.

Valid values:
  • join - links data points with straight line
  • skip - do not draw in this interval.
  • zero - draw as the value is zero.
percentile: number

Controls the percentile level for percentile and threshold aggregation modes.

source: string

Data source to use if multiple data sources are available.

valueFunction: (data: Array<number>) => number

Retrieves the individual value used for calculations from the data array. This is an alternative for specifying index.

Parameters
data: Array<number>

entry in data values array where the value at index 0 is the timestamp

Return value
Data type: number

value to pass to aggregation

X