DataSeries

StockSharp.Xaml.Charting.Model.DataSeries

Eine generische abstrakte Basisklasse, die ein generisches DataSeries definiert, das 1..N-Spalten enthält, wie X,Y im Falle von einfachen X,Y-Daten oder X, Open, High, Low, Close im Falle von OHLC-Daten.

Erbt von: BindableObject

Implementiert: IDataSeries<T, T>, IDataSeries, ISuspendable

Konstruktoren

DataSeries
protected DataSeries()
dataSeries = DataSeries()

Initialisiert eine neue Instanz der DataSeries Klasse.

Eigenschaften

AcceptsUnsortedData
public bool AcceptsUnsortedData { get; set; }
value = dataSeries.AcceptsUnsortedData
dataSeries.AcceptsUnsortedData = value

Neu bei v3.3: Wenn AcceptsUnsortedData falsch ist, dann DataSeries mit einem InvalidOperationException, wenn unsortierte Daten hinzugefügt werden. Ungewollte unsortierte Daten können zu einer viel langsameren Leistung führen.

Count
public int Count { get; }
value = dataSeries.Count

Bekommt die Anzahl der Punkte in dieser Datenreihe

DataDistributionCalculator
public IDataDistributionCalculator<TX> DataDistributionCalculator { get; set; }
value = dataSeries.DataDistributionCalculator
dataSeries.DataDistributionCalculator = value

Bekommt oder setzt die DataDistrutionCalculator-Instanz für diese DataSeries. Wird beim erneuten Abtasten von Daten verwendet, um den richtigen Algorithmus zu bestimmen

DataSeriesType
public abstract DataSeriesType DataSeriesType { get; }
value = dataSeries.DataSeriesType

Bekommt die DataSeriesType @ dafür DataSeries

FifoCapacity
public int? FifoCapacity { get; set; }
value = dataSeries.FifoCapacity
dataSeries.FifoCapacity = value

Wenn die Datenreihe unbegrenzt ist, wenn ein Wert gesetzt wird, wenn die Punktzahl diesen Wert erreicht, werden ältere Punkte verworfen.

HasValues
public abstract bool HasValues { get; }
value = dataSeries.HasValues

Bekommt, ob die Datenreihe Werte hat (nicht leer ist)

IsAttached
public bool IsAttached { get; }
value = dataSeries.IsAttached

Gibt einen Wert an, der angibt, ob diese Instanz angehängt ist.

IsFifo
public bool IsFifo { get; }
value = dataSeries.IsFifo

Bekommt, ob sich die Datenreihe als FIFO verhält Wenn es wahr ist, wenn der FifoCapacity erreicht wird, werden alte Punkte zugunsten neuer Punkte verworfen

IsSecondary
public virtual bool IsSecondary { get; set; }
value = dataSeries.IsSecondary
dataSeries.IsSecondary = value

Wenn dies zutrifft, wird diese Datenreihe nicht für die Berechnung des Kartenbereichs ausgewählt.

IsSorted
public bool IsSorted { get; }
value = dataSeries.IsSorted

Wenn es möglich ist, versuchen Sie, die Daten in X-Richtung zu sortieren.

IsSuspended
public bool IsSuspended { get; }
value = dataSeries.IsSuspended

Erhaltet einen Wert, der angibt, ob Updates für das Ziel derzeit ausgesetzt sind

Item
public TY Item { get; }
value = dataSeries.Item

Holt das Element im Index von der angegebenen DataSeriesColumn.

LatestYValue
public IComparable LatestYValue { get; }
value = dataSeries.LatestYValue

Holt sich den neuesten Y-Wert des DataSeries

ParentSurface
public IUltrachartSurface ParentSurface { get; set; }
value = dataSeries.ParentSurface
dataSeries.ParentSurface = value

Bekommt oder setzt den übergeordneten IUltrachartSurface, an den diese IDataSeries Instanz angehängt ist

SeriesName
public string SeriesName { get; set; }
value = dataSeries.SeriesName
dataSeries.SeriesName = value

Bekommt oder setzt den Namen dieser Serie

SyncRoot
public Lock SyncRoot { get; }
value = dataSeries.SyncRoot

Synchronisationsobjekt (pro Instanz)

XMax
public IComparable XMax { get; }
value = dataSeries.XMax

Holt den berechneten Maximalwert in X für diese Serie

XMin
public IComparable XMin { get; }
value = dataSeries.XMin

Holt sich den berechneten Mindestwert in X für diese Serie

XRange
public virtual IRange XRange { get; }
value = dataSeries.XRange

Bekommt die berechnete XRange, die eine IRange-Umwicklung XMin und XMax Eigenschaften ist

XType
public Type XType { get; }
value = dataSeries.XType

Bekommt den Typ der X-Datenpunkte in diesem DataSeries @. Wird verwendet, um die Kompatibilität mit Achsentypen zu überprüfen

XValues
public IList<TX> XValues { get; }
value = dataSeries.XValues

Bekommt die X-Werte dieser Serie

YMax
public IComparable YMax { get; }
value = dataSeries.YMax

Bekommt den berechneten Maximalwert in Y für diese Serie

YMin
public IComparable YMin { get; }
value = dataSeries.YMin

Bekommt den berechneten Mindestwert in Y für diese Serie

YRange
public virtual IRange YRange { get; }
value = dataSeries.YRange

Erhaltet den berechneten YRange, der eine IRange-Umwicklung der Eigenschaften YMin und YMax ist

YType
public Type YType { get; }
value = dataSeries.YType

Bekommt den Typ der Y-Datenpunkte in diesem DataSeries @. Wird verwendet, um die Kompatibilität mit Achsentypen zu überprüfen

YValues
public IList<TY> YValues { get; }
value = dataSeries.YValues

Bekommt die Y-Werte dieser Serie

Methoden

Append
public abstract void Append(IEnumerable<TX> x, IEnumerable<TY>[] yValues)
dataSeries.Append(x, yValues)

Anhängen einer Liste von X, Y zeigt auf die Serie

x
Die Liste der X Punkte
yValues
Listen von Y-Punkten (abhängig vom Serientyp)
Append
public abstract void Append(TX x, TY[] yValues)
dataSeries.Append(x, yValues)

Hängt einen X, Y-Punkt an die Reihe an

x
Der X-Wert
yValues
Die Y-Werte (abhängig vom Serientyp)
Clear
public void Clear()
dataSeries.Clear()

Löscht die Serie und setzt interne Listen auf Null zurück

ClearColumns
protected abstract void ClearColumns()
dataSeries.ClearColumns()

Wenn in einer abgeleiteten Klasse überschrieben, werden alle Spalten in der Datenreihe gelöscht

Clone
public abstract IDataSeries<TX, TY> Clone()
result = dataSeries.Clone()

Erstellt eine tiefe Kopie eines DataSeries

DecrementSuspend
public void DecrementSuspend()
dataSeries.DecrementSuspend()

Jedes Mal, wenn ein Zielträger angeordnet wird, wird von IUpdateSuspender aufgerufen. Wenn der endgültige Zielträger angeordnet wurde, wird ResumeUpdates aufgerufen.

FindClosestLine
public virtual int FindClosestLine(IComparable x, IComparable y, double xyScaleRatio, double xRadius, LineDrawMode drawNanAs)
result = dataSeries.FindClosestLine(x, y, xyScaleRatio, xRadius, drawNanAs)

Suchregion ist ein vertikaler Bereich mit der Mitte in X und [maxXDistance] X Einheiten links und rechts.

x
Der X-Wert von Punkt [X Dateneinheiten, nicht Pixel]
y
Der Y-Wert von Punkt [Y Dateneinheiten, nicht Pixel]
xyScaleRatio
xUnitsPerPixel/yUnitsPerPixel
xRadius
Gibt die Suchregion in X-Einheiten an (Ticks für DateTime oder TimeSpan)
drawNanAs
gibt an, wie man mit NAN-Elementen umgeht

Rückgabe: Der Index des ersten Punktes in der Linie, -1, wenn nicht gefunden (wenn Zählung Null ist)

FindClosestPoint
public virtual int FindClosestPoint(IComparable xValue, IComparable yValue, double xyScaleRatio, double hitTestRadius)
result = dataSeries.FindClosestPoint(xValue, yValue, xyScaleRatio, hitTestRadius)

Suchregion ist ein vertikaler Bereich mit der Mitte in X und [maxXDistance] X Einheiten links und rechts.

xValue
Der X-Wert von Punkt [X Dateneinheiten, nicht Pixel]
yValue
Der Y-Wert von Punkt [Y Dateneinheiten, nicht Pixel]
xyScaleRatio
xUnitsPerPixel/yUnitsPerPixel
hitTestRadius
Gibt Suchregion in Diagrammkoordinaten an (Ticks für DateTime oder TimeSpan)

Rückgabe: Der Index des gefundenen Wertes, -1, falls nicht gefunden (wenn die Zahl Null ist)

FindIndex
public int FindIndex(IComparable x, SearchMode searchMode)
result = dataSeries.FindIndex(x, searchMode)

Findet den Index zum DataSeries am angegebenen X-Wert

x
Der X-Wert, nach dem gesucht werden soll
searchMode
Die SearchMode zu verwendenden Optionen. Standard ist genau, wobei -1 zurückgegeben wird, wenn der Index nicht gefunden wird

Rückgabe: Der Index des gefundenen Wertes

GetIndicesRange
public IndexRange GetIndicesRange(IRange range)
result = dataSeries.GetIndicesRange(range)

Bekommt die ganzzahligen Indizes des XValues-Arrays, die sich derzeit im VisibleRange befinden.

range
Die VisibleRange um den Indexbereich zu erhalten

Rückgabe: Die Indizes zu den X-Data, die sich derzeit im Bereich befinden

GetPositiveMin``1
protected T GetPositiveMin<T>(T positiveMin, T min)
result = dataSeries.GetPositiveMin(positiveMin, min)

Holt sich den minimalen positiven Wert von (positiveMin, min)

positiveMin
min
GetWindowedYRange
public IRange GetWindowedYRange(IRange xRange, bool getPositiveRange)
result = dataSeries.GetWindowedYRange(xRange, getPositiveRange)

Holt sich den YRange der Daten (min, max der Serie) im sichtbaren Bereichsbereich, wobei der Eingabebereich der VisibleRange ist.

xRange
Die X-Achsen-Reihe derzeit in Sicht
getPositiveRange
Gibt an, ob nur positive YRange zurückgegeben werden soll

Rückgabe: Der YRange der Daten in diesem Fenster

GetWindowedYRange
public IRange GetWindowedYRange(IndexRange xIndexRange)
result = dataSeries.GetWindowedYRange(xIndexRange)

Erhält den YRange der Daten (min, max der Serie) im Eingang IndexRange, wobei Indizes Punktindizes in den Spalten DataSeries sind

xIndexRange
Die X-Achse Indizes derzeit in Sicht

Rückgabe: Der YRange der Daten in diesem Fenster

GetWindowedYRange
public IRange GetWindowedYRange(IRange xRange)
result = dataSeries.GetWindowedYRange(xRange)

Holt sich den YRange der Daten (min, max der Serie) im sichtbaren Bereichsbereich, wobei der Eingabebereich der VisibleRange ist.

xRange
Die X-Achsen-Reihe derzeit in Sicht

Rückgabe: Der YRange der Daten in diesem Fenster

GetWindowedYRange
public IRange GetWindowedYRange(IndexRange xIndexRange, bool getPositiveRange)
result = dataSeries.GetWindowedYRange(xIndexRange, getPositiveRange)

Erhält den YRange der Daten (min, max der Serie) im Eingang IndexRange, wobei Indizes Punktindizes in den Spalten DataSeries sind

xIndexRange
Die X-Achse Indizes derzeit in Sicht
getPositiveRange
Gibt an, ob nur positive YRange zurückgegeben werden soll

Rückgabe: Der YRange der Daten in diesem Fenster

GetXMinAt
public TX GetXMinAt(int index, TX existingXMin)
result = dataSeries.GetXMinAt(index, existingXMin)

Wenn Sie in einer abgeleiteten Klasse überschreiben, erhalten Sie das Min(existingXMin, currentMin), wobei currentMin das Minimum bei dem angegebenen Index ist.

index
Der Index zum zugrunde liegenden Datensatz
existingXMin
Das bestehende Minimum

Rückgabe: Das neue XMin, das ist das Min(existingXMin, currentMin)

GetYMaxAt
public abstract TY GetYMaxAt(int index, TY existingYMax)
result = dataSeries.GetYMaxAt(index, existingYMax)

Wenn Sie in einer abgeleiteten Klasse überschreiben, erhalten Sie den Max(existingYMax, currentMax), wobei currentMax das Maximum bei dem angegebenen Index ist.

index
Der Index zum zugrunde liegenden Datensatz
existingYMax
Das bestehende Maximum

Rückgabe: Der neue YMax, der Min(existingYMax, currentMax) ist

GetYMinAt
public abstract TY GetYMinAt(int index, TY existingYMin)
result = dataSeries.GetYMinAt(index, existingYMin)

Wenn Sie in einer abgeleiteten Klasse überschreiben, erhalten Sie das Min(existingYMin, currentMin), wobei currentMin das Minimum bei dem angegebenen Index ist.

index
Der Index zum zugrunde liegenden Datensatz
existingYMin
Das bestehende Minimum

Rückgabe: Die neue YMin, die Min(existingYMin, currentMin) ist

InvalidateParentSurface
public void InvalidateParentSurface(RangeMode rangeMode)
dataSeries.InvalidateParentSurface(rangeMode)

Diese Methode ist äußerst nützlich, wenn IDataSeries in einem ViewModel und über MVVM an IRenderableSeries gebunden sind. Bitte beachten Sie den Parameter für die Ungültigerklärungsoptionen

rangeMode
Bietet RangeMode Ungültigkeitsoptionen für die übergeordnete Oberfläche
Remove
public void Remove(TX x)
dataSeries.Remove(x)

Entfernt die zugehörigen Y-Werte für den angegebenen X-Wert

x
Das X DataValue zu entfernen. Entfernt alle zugehörigen Y-Werte
RemoveAt
public abstract void RemoveAt(int index)
dataSeries.RemoveAt(index)

Entfernen der X,Y-Werte im angegebenen Index

index
Der Index zum Entfernen bei
RemoveRange
public abstract void RemoveRange(int startIndex, int count)
dataSeries.RemoveRange(startIndex, count)

Entfernen Sie eine Reihe von Punkten, die vom angegebenen Index ausgehen

startIndex
Startindex des zu entfernenden Elementbereichs
count
Die Anzahl der zu entfernenden Elemente
ResumeUpdates
public void ResumeUpdates(IUpdateSuspender suspender)
dataSeries.ResumeUpdates(suspender)

Setzt Updates für das Ziel fort, die von IUpdateSuspender aufgerufen werden sollen

suspender
SuspendUpdates
public IUpdateSuspender SuspendUpdates()
result = dataSeries.SuspendUpdates()

Setzt die Zeichnungsaktualisierungen des Ziels aus, bis das zurückgegebene Objekt entsorgt ist, wenn ein endgültiger Draw Call ausgegeben wird

Rückgabe: Der Einweg-Update Suspender

ThrowWhenAppendInvalid
protected void ThrowWhenAppendInvalid(int paramsCount)
dataSeries.ThrowWhenAppendInvalid(paramsCount)

Bestätigen korrekte Anzahl der Parameter, die an Append(TX, Params TY) geliefert wurden, und würfen falls erforderlich

paramsCount
Die erwartete Anzahl der Params
ToHitTestInfo
public virtual HitTestInfo ToHitTestInfo(int index)
result = dataSeries.ToHitTestInfo(index)

Wenn in einer abgeleiteten Klasse überschrieben, gibt eine HitTestInfo @ Struktur mit Daten über den Datenpunkt an den angegebenen Index

index
Der Index zum DataSeries

Rückgabe: Die HitTestInfo

ToPointSeries
public abstract IPointSeries ToPointSeries(ResamplingMode resamplingMode, IndexRange pointRange, int viewportWidth, bool isCategoryAxis, bool? dataIsDisplayedAs2D, IRange visibleXRange, IPointResamplerFactory factory, object pointSeriesArg)
result = dataSeries.ToPointSeries(resamplingMode, pointRange, viewportWidth, isCategoryAxis, dataIsDisplayedAs2D, visibleXRange, factory, pointSeriesArg)

Konvertiert den Standard YValues in IPointSeries, der zum Rendern von XY-Serien verwendet wird

resamplingMode
Die gewünschte ResamplingMode
pointRange
Der Integer-Indizes-Bereich im übergeordneten Datensatz
viewportWidth
Die aktuelle Breite des Viewports
isCategoryAxis
Wenn true, verwendet die Indizes, um die neu gesampelten X-Werte zu bilden, andernfalls verwendet sie die X-Werte selbst
dataIsDisplayedAs2D
Wenn dies wahr ist, werden Daten als eine Streureihe ohne Beziehung zwischen den Punkten betrachtet, e.g. keine Zeilenreihe
visibleXRange
factory
Die PointResamplerFactory, die IPointResampler Instanzen zurückgibt
pointSeriesArg
Zusätzlicher Parameter für die Punktreihe.

Rückgabe: Ein IPointSeries, das zum Rendern von XY-Serien verwendet wird

ToPointSeries
public IPointSeries ToPointSeries(IList column, ResamplingMode resamplingMode, IndexRange pointRange, int viewportWidth, bool isCategoryAxis)
result = dataSeries.ToPointSeries(column, resamplingMode, pointRange, viewportWidth, isCategoryAxis)

Verwenden Sie stattdessen ToPointSeries und fügen Sie den Typ der Punktreihen zu korrigieren

column
resamplingMode
pointRange
viewportWidth
isCategoryAxis

Ereignisse

DataSeriesChanged
public event EventHandler<DataSeriesChangedEventArgs> DataSeriesChanged
dataSeries.DataSeriesChanged += handler

Ereignis wird ausgelöst, wenn Punkte hinzugefügt, entfernt oder eine oder mehrere DataSeries Eigenschaften geändert werden

Felder

_xColumn
protected ISeriesColumn<TX> _xColumn
value = dataSeries._xColumn

Die XColumn für diese DataSeries

_yColumn
protected ISeriesColumn<TY> _yColumn
value = dataSeries._yColumn

Die primäre YColumn für diese DataSeries @