Options
All
  • Public
  • Public/Protected
  • All
Menu

An XyDataSeries where an arbitrary function is applied to each y value on the original series. eg const filterAboveZero = new XyCustomFilter(originalSeries); filterAboveZero.filterFunction = (index: number, y: number) => y > 0 ? y : NaN; If you want to be able to refer to the original series, use a normal function, rather than an arrow function, so that 'this' will refer to the filter. eg const addPreviousFilter = new XyCustomFilter(originalSeries); addPreviousFilter.filterFunction = function(index: number, y: number) { const prev = this.getOriginalYValues().get(index); return prev + y; };

Hierarchy

Implements

Index

Constructors

constructor

Properties

Readonly dataChanged

dataChanged: EventHandler<IDataChangeArgs> = new EventHandler<IDataChangeArgs>()

An EventHandler which is raised when the data changes.

remarks

To subscribe to dataChanged, use the following code:

const dataSeries = new XyDataSeries(wasmContext);
const callback = () => {
   // Data has changed
};
dataSeries.dataChanged.subscribe(callback);

To unsubscribe from dataChanged, use the following code:

const dataSeries = new XyDataSeries(wasmContext);
dataSeries.dataChanged.unsubscribe(callback);

Readonly dataDistributionCalculator

dataDistributionCalculator: IDataDistributionCalculator = new DataDistributionCalculator()

Gets the IDataDistributionCalculator instance for this DataSeries. Used when resampling data to determine the correct algorithm

dataIds

dataIds: Record<number | string, number[]>

If set, these will be included in the serialised definition, so that it can be used with sharedData

Protected doubleVectorProvider

doubleVectorProvider: IDoubleVectorProvider = new DoubleVectorProvider()

Readonly field

field: EDataSeriesField = EDataSeriesField.Y

The field that will be returned by getOriginalYValues.

Readonly id

id: string

A unique Id for the IDataSeries

Protected indexes

indexes: SCRTDoubleVector

Protected isDeleted

isDeleted: boolean

minXSpacing

minXSpacing: number = 0

Protected originalSeriesProperty

originalSeriesProperty: BaseDataSeries

Readonly type

type: Xy = EDataSeriesType.Xy

Gets the EDataSeriesType type of the DataSeries

Readonly webAssemblyContext

webAssemblyContext: TSciChart

The SciChart WebAssembly Context containing native methods and access to our WebGL2 Engine

Readonly xField

xField: EDataSeriesField = EDataSeriesField.X

The field that will be returned by getOriginalYValues.

xFinalAnimationValues

xFinalAnimationValues: SCRTDoubleVector

X vector with final animation values

xInitialAnimationValues

xInitialAnimationValues: SCRTDoubleVector

X vector with initial animation values

Protected xValues

xValues: SCRTDoubleVector

yFinalAnimationValues

yFinalAnimationValues: SCRTDoubleVector

Y vector with final animation values

yInitialAnimationValues

yInitialAnimationValues: SCRTDoubleVector

Y vector with initial animation values

Protected yValues

yValues: SCRTDoubleVector

Accessors

capacity

  • get capacity(): number
  • set capacity(value: number): void
  • Gets or sets the capacity of data-points in the DataSeries

    Returns number

  • Gets or sets the capacity of data-points in the DataSeries

    Parameters

    • value: number

    Returns void

changeCount

  • get changeCount(): number
  • Gets the change count for this data series. Allows to indentify when data series was changed

    inheritdoc

    Returns number

containsNaN

  • get containsNaN(): boolean
  • set containsNaN(containsNaN: boolean): void
  • Gets or sets whether the Y data contains NaN values. Set containsNaN = false for the performance optimization when the series has no NaNs

    inheritdoc

    Returns boolean

  • Gets or sets whether the Y data contains NaN values. Set containsNaN = false for the performance optimization when the series has no NaNs

    inheritdoc

    Parameters

    • containsNaN: boolean

    Returns void

dataSeriesName

  • get dataSeriesName(): string
  • set dataSeriesName(dataSeriesName: string): void
  • Gets the DataSeries name. This is used in legend controls and tooltips to identify the series

    inheritdoc

    Returns string

  • Gets the DataSeries name. This is used in legend controls and tooltips to identify the series

    inheritdoc

    Parameters

    • dataSeriesName: string

    Returns void

fifoCapacity

  • get fifoCapacity(): number
  • Gets the maximum size of the dataSeries in FIFO (First In First Out) mode. This can only be set in the constructor options. If set, the dataSeries supports only append, appendRange, update and clear. Any data that is appended once the dataSeries has reached fifoCapacity will cause the oldest data to be discarded. This is a much more efficient than appending and removing for achieving scrolling data. Spline series and Stacked series currently do not support fifo mode. To get the scrolling effect, you need to consider the behaviour of your X Axis. You can either Use a CategoryAxis Use a NumericAxis with increasing x values, and update the visibleRange (or use zoomExtents)

    inheritdoc

    Returns number

fifoStartIndex

  • get fifoStartIndex(): number
  • Internal only - Get the starting offset when in fifo mode

    inheritdoc

    Returns number

fifoSweeping

  • get fifoSweeping(): boolean
  • set fifoSweeping(enabled: boolean): void
  • If true, data in fifo mode will not be "unwrapped" before drawing, giving ecg style sweeping mode. To get the sweeping effect, you need to consider the behaviour of your X Axis. You can either Use a CategoryAxis Use a NumericAxis and make your x values an offset from the first value, eg by doing x % fifoCapcity

    inheritdoc

    Returns boolean

  • If true, data in fifo mode will not be "unwrapped" before drawing, giving ecg style sweeping mode. To get the sweeping effect, you need to consider the behaviour of your X Axis. You can either Use a CategoryAxis Use a NumericAxis and make your x values an offset from the first value, eg by doing x % fifoCapcity

    inheritdoc

    Parameters

    • enabled: boolean

    Returns void

fifoSweepingGap

  • get fifoSweepingGap(): number
  • set fifoSweepingGap(fifoSweepingGap: number): void
  • In fifo sweeping mode, the number of earliest points to skip to create a gap between the latest and earliest data

    inheritdoc

    Returns number

  • In fifo sweeping mode, the number of earliest points to skip to create a gap between the latest and earliest data

    inheritdoc

    Parameters

    • fifoSweepingGap: number

    Returns void

filterFunction

  • get filterFunction(): (index: number, y: number) => number
  • set filterFunction(ff: TfilterFunction): void
  • Gets or sets the filter function to be used by this filter

    Returns (index: number, y: number) => number

      • (index: number, y: number): number
      • Parameters

        • index: number
        • y: number

        Returns number

  • Gets or sets the filter function to be used by this filter

    Parameters

    Returns void

hasMetadata

  • get hasMetadata(): boolean
  • Check if the series has an existing metadata

    Returns boolean

hasValues

  • get hasValues(): boolean
  • When true, the DataSeries has values, else it is empty

    inheritdoc

    Returns boolean

isEvenlySpaced

  • get isEvenlySpaced(): boolean
  • set isEvenlySpaced(isSorted: boolean): void

isSorted

  • get isSorted(): boolean
  • set isSorted(isSorted: boolean): void
  • Gets or sets whether the X-values are sorted ascending or not. See remarks at IDataSeries.isSorted for further information

    inheritdoc

    Returns boolean

  • Gets or sets whether the X-values are sorted ascending or not. See remarks at IDataSeries.isSorted for further information

    inheritdoc

    Parameters

    • isSorted: boolean

    Returns void

originalSeries

xRange

  • Gets the range in the X-direction for this DataSeries

    inheritdoc

    Returns NumberRange

Methods

append

  • Appends a single X, Y point to the DataSeries

    remarks

    For best performance on drawing large datasets, use the appendRange method

    Any changes of the DataSeries will trigger a redraw on the parent SciChartSurface

    Parameters

    • x: number

      The X-value

    • y: number

      The Y-value

    • Optional metadata: IPointMetadata

      The point metadata

    Returns void

Protected appendMetadata

Protected appendMetadataRange

  • appendMetadataRange(metadata: IPointMetadata[], length: number): void

appendRange

  • Appends a range of X, Y points to the DataSeries

    remarks

    This method is considerably higher performance than append which appends a single point

    Any changes of the DataSeries will trigger a redraw on the parent SciChartSurface

    Parameters

    Returns void

Protected calculateInitialCapacity

clear

  • clear(): void
  • Clears the entire DataSeries.

    remarks

    Note this does not free memory, WebAssembly/Native memory is released by calling delete, after which the DataSeries is no longer usable.

    Any changes of the DataSeries will trigger a redraw on the parent SciChartSurface

    Returns void

count

  • count(): number
  • Gets the count of data-points in the DataSeries

    Returns number

createAnimationVectors

  • createAnimationVectors(): void

delete

  • delete(): void

detachFromOriginalSeries

  • detachFromOriginalSeries(): void

Protected filterAll

  • filterAll(): void

Protected filterFunctionProperty

  • filterFunctionProperty(index: number, y: number): number
  • Parameters

    • index: number
    • y: number

    Returns number

Protected filterOnAppend

  • filterOnAppend(count: number): void
  • Parameters

    • count: number

    Returns void

Protected filterOnInsert

  • filterOnInsert(startIndex: number, count: number): void
  • Parameters

    • startIndex: number
    • count: number

    Returns void

Protected filterOnRemove

  • filterOnRemove(startIndex: number, count: number): void
  • Parameters

    • startIndex: number
    • count: number

    Returns void

Protected filterOnUpdate

  • filterOnUpdate(index: number): void
  • Parameters

    • index: number

    Returns void

findIndex

  • findIndex(xValue: number, searchMode?: ESearchMode): number
  • Finds the nearest index of the xValue passed in by performing binary or linear search on the X-Values array. Returns -1 for index not found. Other negative numbers indicate an error condition

    Parameters

    • xValue: number

      the X-value to find

    • Default value searchMode: ESearchMode = ESearchMode.Nearest

    Returns number

    The index, or -1 if not found

getIndicesRange

  • Gets the integer indices of the XValues array that are currently in the VisibleRange passed in, and an undefined range otherwise.

    Parameters

    • xRange: NumberRange

      The VisibleRange to get the indices range

    • Default value isCategoryData: boolean = false

      If True the renderable series uses CategoryAxis

    • Default value downSearchMode: ESearchMode = ESearchMode.RoundDown

      Specifies the search mode used to look for the index of visibleRange.Min

    • Default value upSearchMode: ESearchMode = ESearchMode.RoundUp

      Specifies the search mode used to look for the index of visibleRange.Max

    Returns NumberRange

    numberRange The indices to the X-Data that are currently in range.

getIsDeleted

  • getIsDeleted(): boolean

getMetadataAt

  • Gets the metadata by index

    Parameters

    • index: number

      The X index

    • Default value ignoreFifo: boolean = false

    Returns IPointMetadata

getMetadataLength

  • getMetadataLength(): number

getNativeIndexes

  • getNativeIndexes(): SCRTDoubleVector

getNativeValue

  • getNativeValue(values: SCRTDoubleVector, index: number): number
  • Get the value from a native vector , potentially accounting for fifo sweeping.

    Parameters

    • values: SCRTDoubleVector
    • index: number

    Returns number

getNativeXValues

  • getNativeXValues(): SCRTDoubleVector

getNativeYValues

  • getNativeYValues(): SCRTDoubleVector

Protected getOptions

getOriginalCount

  • getOriginalCount(): number
  • Get the length of the original series.

    Returns number

getOriginalXValues

  • getOriginalXValues(): SCRTDoubleVector
  • Get the X values of the original series

    Returns SCRTDoubleVector

getOriginalYValues

  • getOriginalYValues(): SCRTDoubleVector
  • Get the Y values of the original series, according to the field set.

    Returns SCRTDoubleVector

Protected getValuesFromHlc

Protected getValuesFromOHLC

Protected getValuesFromXyy

Protected getValuesFromXyz

getWindowedYRange

getXRange

Protected getXValues

hasMetadataGenerator

  • hasMetadataGenerator(): boolean
  • Check if the series has an existing metadataGenerator

    Returns boolean

insert

  • insert(startIndex: number, x: number, y: number, metadata?: IPointMetadata): void
  • summary

    Inserts a single X,Y value at the start index

    remarks

    For best performance on drawing large datasets, use the insertRange method

    Any changes of the DataSeries will trigger a redraw on the parent SciChartSurface

    Parameters

    • startIndex: number

      the index to insert at

    • x: number

      the X value

    • y: number

      the Y value

    • Optional metadata: IPointMetadata

      The point metadata

    Returns void

Protected insertMetadata

Protected insertMetadataRange

  • insertMetadataRange(startIndex: number, metadata: IPointMetadata[]): void

insertRange

  • summary

    Inserts a range of X,Y values at the startIndex

    remarks

    Any changes of the DataSeries will trigger a redraw on the parent SciChartSurface

    Parameters

    Returns void

notifyDataChanged

  • notifyDataChanged(changeType: EDataChangeType, index: number, count: number, name?: string): void

Protected onBaseDataChanged

Protected onClear

  • onClear(): void
  • Called when the original series is cleared.

    Returns void

Protected onOriginalPropertyChanged

  • onOriginalPropertyChanged(name: string): void
  • Callback when a property on the original series is changed.

    Parameters

    • name: string

      The name of the property that changed

    Returns void

removeAt

  • removeAt(index: number): void
  • Removes an X,Y value at the specified index

    remarks

    Any changes of the DataSeries will trigger a redraw on the parent SciChartSurface

    Parameters

    • index: number

      the index to remove at

    Returns void

Protected removeMetadataAt

  • removeMetadataAt(index: number): void

Protected removeMetadataRange

  • removeMetadataRange(startIndex: number, count: number): void

removeRange

  • removeRange(startIndex: number, count: number): void
  • summary

    Removes a range of X,Y values at the specified index

    remarks

    Any changes of the DataSeries will trigger a redraw on the parent SciChartSurface

    Parameters

    • startIndex: number

      the start index to remove at

    • count: number

      the number of points to remove

    Returns void

Protected reserve

  • reserve(size: number): void
  • Parameters

    • size: number

    Returns void

setFinalAnimationVectors

setInitialAnimationVectors

Protected setMetadata

Protected setMetadataAt

setMetadataGenerator

  • Sets a function that will be used to generate metadata for values when they are appended/inserted, if no explicit metadata is supplied.

    Parameters

    Returns void

Protected throwIfFifo

  • throwIfFifo(operation: string): void
  • Parameters

    • operation: string

    Returns void

toJSON

  • Convert the object to a definition that can be serialized to JSON, or used directly with the builder api

    Parameters

    • Default value excludeData: boolean = false

      if set true, data values will not be included in the json.

    Returns TDataSeriesDefinition

update

  • Updates a single Y-value by X-index

    remarks

    Any changes of the DataSeries will trigger a redraw on the parent SciChartSurface

    Parameters

    • index: number

      the index to update

    • y: number

      The new Y value

    • Optional metadata: IPointMetadata

      The point metadata

    Returns void

updateAnimationProperties

  • updateAnimationProperties(progress: number, animation: SeriesAnimation): void

updateXy

  • updateXy(index: number, x: number, y: number, metadata?: IPointMetadata): void
  • Updates a single X, Y-value by X-index. Might also need to set isSorted = false

    remarks

    Any changes of the DataSeries will trigger a redraw on the parent SciChartSurface

    Parameters

    • index: number

      The index to update

    • x: number

      The new X value

    • y: number

      The new Y value

    • Optional metadata: IPointMetadata

      The point metadata

    Returns void

validateAnimationVectors

  • validateAnimationVectors(): void

Protected validateIndex

  • validateIndex(index: number, message?: string): void
  • Parameters

    • index: number
    • Optional message: string

    Returns void

Generated using TypeDoc