DataSeries
Uma classe de base abstrata genérica que define uma genérica DataSeries que contém colunas 1..N, como X,Y no caso de dados simples X,Y, ou X, Aberto, Alto, Baixo, Fechar no caso de dados OHLC.
Herda de: BindableObject
Implementa: IDataSeries<T, T>, IDataSeries, ISuspendable
Construtores
protected DataSeries()
dataSeries = DataSeries()
Inicializa uma nova instância da classe DataSeries.
Propriedades
public bool AcceptsUnsortedData { get; set; }
value = dataSeries.AcceptsUnsortedData
dataSeries.AcceptsUnsortedData = value
Novo para v3.3: quando AcceptsUnsortedDataé false, o DataSeries com lançamento de InvalidOperationException se dados não sorteados forem adicionados. Dados não sorteados não intencionais podem resultar em desempenho muito mais lento. Para desativar esta verificação, defina AcceptsUnsortedData = true.
public int Count { get; }
value = dataSeries.Count
Obtém o número de pontos nesta série de dados
public IDataDistributionCalculator<TX> DataDistributionCalculator { get; set; }
value = dataSeries.DataDistributionCalculator
dataSeries.DataDistributionCalculator = value
Obtém ou define a instância DataDistrutionCalculator para este DataSeries. Usado ao reavaliar os dados para determinar o algoritmo correto
public abstract DataSeriesType DataSeriesType { get; }
value = dataSeries.DataSeriesType
Obtém o DataSeriesType para este DataSeries
public int? FifoCapacity { get; set; }
value = dataSeries.FifoCapacity
dataSeries.FifoCapacity = value
Obtém ou define o tamanho do buffer FIFO. Se nulo, então a série de dados é ilimitada. Se um valor for definido, quando a contagem de pontos atingir este valor, os pontos mais antigos serão descartados
public abstract bool HasValues { get; }
value = dataSeries.HasValues
Obtém se a Série de Dados tem valores (não está vazia)
public bool IsAttached { get; }
value = dataSeries.IsAttached
Obtém um valor indicando se esta instância está anexada.
public bool IsFifo { get; }
value = dataSeries.IsFifo
Obtém se a série de dados se comporta como um FIFO Se True, quando o FifoCapacity é alcançado, pontos antigos serão descartados em favor de novos pontos
public virtual bool IsSecondary { get; set; }
value = dataSeries.IsSecondary
dataSeries.IsSecondary = value
Se for verdadeiro, esta série de dados não será selecionada para cálculo de intervalo de gráficos.
public bool IsSorted { get; }
value = dataSeries.IsSorted
Obtém se este DataSeriescontém dados ordenados na direção X. Nota: Dados ordenados resultarão em operações de indexação muito mais rápidas. Se possível, tente manter os seus dados ordenados na direção X
public bool IsSuspended { get; }
value = dataSeries.IsSuspended
Obtém um valor indicando se as actualizações do alvo estão suspensas
public TY Item { get; }
value = dataSeries.Item
Obtém o item no índice a partir do especificado DataSeriesColumn.
public IComparable LatestYValue { get; }
value = dataSeries.LatestYValue
Obtém o mais recente valor Y do DataSeries
public IUltrachartSurface ParentSurface { get; set; }
value = dataSeries.ParentSurface
dataSeries.ParentSurface = value
Obtém ou define o pai IUltrachartSurface a qual esta IDataSeries instância está anexada
public string SeriesName { get; set; }
value = dataSeries.SeriesName
dataSeries.SeriesName = value
Obtém ou define o nome desta série
StockSharp#Xaml#Charting#Model#DataSeries#IDataSeries#XValues
Obtém os valores X desta série de dados
StockSharp#Xaml#Charting#Model#DataSeries#IDataSeries#YValues
Obtém os valores Y desta série de dados
public Lock SyncRoot { get; }
value = dataSeries.SyncRoot
Objeto de sincronização (por exemplo)
public IComparable XMax { get; }
value = dataSeries.XMax
Obtém o valor máximo calculado em X para esta série
public IComparable XMin { get; }
value = dataSeries.XMin
Obtém o valor mínimo calculado em X para esta série
public virtual IRange XRange { get; }
value = dataSeries.XRange
Obtém o XRange calculado, que é um envolvimento de IRage XMin e XMax propriedades
public Type XType { get; }
value = dataSeries.XType
Obtém o Tipo de pontos de dados X neste DataSeries. Usado para verificar a compatibilidade com os tipos Axis
public IComparable YMax { get; }
value = dataSeries.YMax
Obtém o valor máximo calculado em Y para esta série
public IComparable YMin { get; }
value = dataSeries.YMin
Obtém o valor mínimo calculado em Y para esta série
public virtual IRange YRange { get; }
value = dataSeries.YRange
Obtém o YRange calculado, que é um Wraping IRage YMin e YMax propriedades
public Type YType { get; }
value = dataSeries.YType
Obtém o Tipo de pontos de dados Y neste DataSeries. Usado para verificar a compatibilidade com os tipos Axis
Métodos
public abstract void Append(IEnumerable<TX> x, IEnumerable<TY>[] yValues)
dataSeries.Append(x, yValues)
Adiciona uma lista de pontos X, Y à série
- x
- A lista de pontos X
- yValues
- Listas de pontos Y (depende do tipo de série)
public abstract void Append(TX x, TY[] yValues)
dataSeries.Append(x, yValues)
Adiciona um ponto X, Y à série
- x
- O valor X
- yValues
- Os valores Y (depende do tipo de série)
public void Clear()
dataSeries.Clear()
Limpa a série, redefinindo listas internas para tamanho zero
protected abstract void ClearColumns()
dataSeries.ClearColumns()
Quando substituído em uma classe derivada, limpa todas as colunas da Série de Dados
public abstract IDataSeries<TX, TY> Clone()
result = dataSeries.Clone()
Cria uma cópia profunda de DataSeries
public void DecrementSuspend()
dataSeries.DecrementSuspend()
Chamado por IUpdateSuspender cada vez que um suspensório de destino é eliminado. Quando o suspensório final foi eliminado, ResumeUpdates é chamado
public virtual int FindClosestLine(IComparable x, IComparable y, double xyScaleRatio, double xRadius, LineDrawMode drawNanAs)
result = dataSeries.FindClosestLine(x, y, xyScaleRatio, xRadius, drawNanAs)
Encontra a linha mais próxima de um ponto com o valor X e Y indicado. A região de pesquisa é uma área vertical com centro em X e [maxXDistance] unidades X para esquerda e direita
- x
- O valor X do ponto [unidades de dados X, não pixels]
- y
- O valor Y do ponto [unidades de dados Y, não pixels]
- xyScaleRatio
- xUnitsPerPixel/yUnitsPerPixel
- xRadius
- especifica a região de pesquisa em unidades X (pontos para DateTime@ ou TimeSpan)
- drawNanAs
- especifica como lidar com elementos NAN
Retorna: O índice do primeiro ponto na linha, -1 se não foi encontrado (quando a contagem é zero)
public virtual int FindClosestPoint(IComparable xValue, IComparable yValue, double xyScaleRatio, double hitTestRadius)
result = dataSeries.FindClosestPoint(xValue, yValue, xyScaleRatio, hitTestRadius)
Encontra o ponto mais próximo de um ponto com o valor X e Y indicado. A região de pesquisa é uma área vertical com centro em X e [maxXDistance] unidades X para esquerda e direita
- xValue
- O valor X do ponto [unidades de dados X, não pixels]
- yValue
- O valor Y do ponto [unidades de dados Y, não pixels]
- xyScaleRatio
- xUnitsPerPixel/yUnitsPerPixel
- hitTestRadius
- Especifica a região de pesquisa nas coordenadas dos gráficos(pontos para DateTime@ ou TimeSpan)
Retorna: O índice do valor encontrado, -1 se não encontrado (quando a contagem é zero)
public int FindIndex(IComparable x, SearchMode searchMode)
result = dataSeries.FindIndex(x, searchMode)
Localiza o índice para DataSeries no valor X especificado
- x
- O valor X a procurar
- searchMode
- As opções SearchMode a usar. O padrão é exato, onde - 1 é retornado se o índice não for encontrado
Retorna: O índice do valor encontrado
public IndexRange GetIndicesRange(IRange range)
result = dataSeries.GetIndicesRange(range)
Obtém os índices inteiros do array XValues que estão atualmente no VisibleRange passado.
- range
- O VisibleRange para obter o intervalo de índices
Retorna: Os índices para os dados X que estão atualmente no intervalo
protected T GetPositiveMin<T>(T positiveMin, T min)
result = dataSeries.GetPositiveMin(positiveMin, min)
Obtém o valor positivo mínimo de (positiveMin, min)
- positiveMin
- min
public IRange GetWindowedYRange(IRange xRange, bool getPositiveRange)
result = dataSeries.GetWindowedYRange(xRange, getPositiveRange)
Obtém o YRange dos dados (min, máx. da série) no intervalo de pontos de alcance visível de entrada, onde o intervalo de entrada é o VisibleRange
- xRange
- O intervalo X- Axis atualmente em vista
- getPositiveRange
- Indica se deve retornar YRange positivo apenas
Retorna: O intervalo Y dos dados nesta janela
public IRange GetWindowedYRange(IndexRange xIndexRange)
result = dataSeries.GetWindowedYRange(xIndexRange)
Obtém o YRange dos dados (min, máx. da série) na entrada IndexRange, onde os índices são índices de pontos nas colunas DataSeries@
- xIndexRange
- Os índices X-Axis atualmente em vista
Retorna: O intervalo Y dos dados nesta janela
public IRange GetWindowedYRange(IRange xRange)
result = dataSeries.GetWindowedYRange(xRange)
Obtém o YRange dos dados (min, máx. da série) no intervalo de pontos de alcance visível de entrada, onde o intervalo de entrada é o VisibleRange
- xRange
- O intervalo X- Axis atualmente em vista
Retorna: O intervalo Y dos dados nesta janela
public IRange GetWindowedYRange(IndexRange xIndexRange, bool getPositiveRange)
result = dataSeries.GetWindowedYRange(xIndexRange, getPositiveRange)
Obtém o YRange dos dados (min, máx. da série) na entrada IndexRange, onde os índices são índices de pontos nas colunas DataSeries@
- xIndexRange
- Os índices X-Axis atualmente em vista
- getPositiveRange
- Indica se deve retornar YRange positivo apenas
Retorna: O intervalo Y dos dados nesta janela
public TX GetXMinAt(int index, TX existingXMin)
result = dataSeries.GetXMinAt(index, existingXMin)
Quando sobreposto em uma classe derivada, obtém o Min(existingXMin, currentMin), onde currentMin é o mínimo no índice especificado
- index
- O índice do conjunto de dados subjacente
- existingXMin
- O mínimo existente
Retorna: O novo XMin, que é o Min(existingXMin, currentMin)
public abstract TY GetYMaxAt(int index, TY existingYMax)
result = dataSeries.GetYMaxAt(index, existingYMax)
Quando sobreposto em uma classe derivada, obtém o Max(existingYMax, currentMax), onde currentMax é o máximo no índice especificado
- index
- O índice do conjunto de dados subjacente
- existingYMax
- O máximo existente
Retorna: O novo YMax, que é o Min(existingYMax, currentMax)
public abstract TY GetYMinAt(int index, TY existingYMin)
result = dataSeries.GetYMinAt(index, existingYMin)
Quando sobreposto em uma classe derivada, obtém o Min(existingYMin, currentMin), onde currentMin é o mínimo no índice especificado
- index
- O índice do conjunto de dados subjacente
- existingYMin
- O mínimo existente
Retorna: O novo YMin, que é o Min(existingYMin, currentMin)
public void InvalidateParentSurface(RangeMode rangeMode)
dataSeries.InvalidateParentSurface(rangeMode)
Pode ser chamado para desencadear um desenho no pai UltrachartSurface. Este método é extremamente útil quando IDataSeries estão em ViewModel e estão ligados via MVVM para IRenderableSeries. Por favor, veja o parâmetro para opções de invalidação
- rangeMode
- Fornece opções de invalidação RangeModepara a superfície pai
public void Remove(TX x)
dataSeries.Remove(x)
Remove os valores Y associados para o valor X especificado
- x
- O X DataValue a remover. Remove todos os Y- Values associados
public abstract void RemoveAt(int index)
dataSeries.RemoveAt(index)
Remove os valores X,Y no índice especificado
- index
- O índice a remover em
public abstract void RemoveRange(int startIndex, int count)
dataSeries.RemoveRange(startIndex, count)
Remove um intervalo de pontos a partir do índice especificado
- startIndex
- Índice inicial da gama de elementos a remover
- count
- O número de elementos a remover
public void ResumeUpdates(IUpdateSuspender suspender)
dataSeries.ResumeUpdates(suspender)
Continua actualizações sobre o alvo, que se pretende chamar por IUpdateSuspender
- suspender
public IUpdateSuspender SuspendUpdates()
result = dataSeries.SuspendUpdates()
Suspende o desenho de actualizações sobre o alvo até que o objeto devolvido seja eliminado, quando será emitida uma chamada final de sorteio
Retorna: O Suspensor de Atualização descartável
protected void ThrowWhenAppendInvalid(int paramsCount)
dataSeries.ThrowWhenAppendInvalid(paramsCount)
Afirma o número correto de parâmetros fornecidos para o Append(TX, params TY) e lança se necessário
- paramsCount
- A contagem esperada de parâmetros
public virtual HitTestInfo ToHitTestInfo(int index)
result = dataSeries.ToHitTestInfo(index)
Quando substituído em uma classe derivada, retorna uma HitTestInfo struct contendo dados sobre o ponto de dados no índice especificado
- index
- O índice para DataSeries
Retorna: A HitTestInfo
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)
Converte o YValues padrão para IPointSeries que é usado para renderizar séries XY
- resamplingMode
- O desejado ResamplingMode
- pointRange
- O intervalo inteiro de índices no conjunto de dados pai
- viewportWidth
- A largura atual da janela
- isCategoryAxis
- Se true, usa os índices para formar os valores X reamostrados, então usa os próprios X-Valores
- dataIsDisplayedAs2D
- Se true, então os dados são considerados como uma série de dispersão sem relação entre os pontos, e.g. not a line series
- visibleXRange
- factory
- O PointResamplerFactory que retorna IPointResampler instâncias
- pointSeriesArg
- Parâmetro adicional para a série de pontos.
Retorna: Uma IPointSeries que é usada para renderizar séries XY
public IPointSeries ToPointSeries(IList column, ResamplingMode resamplingMode, IndexRange pointRange, int viewportWidth, bool isCategoryAxis)
result = dataSeries.ToPointSeries(column, resamplingMode, pointRange, viewportWidth, isCategoryAxis)
OBSOLETE. Use ToPointSeries em vez disso, e molde para corrigir o tipo de série de pontos
- column
- resamplingMode
- pointRange
- viewportWidth
- isCategoryAxis
Eventos
public event EventHandler<DataSeriesChangedEventArgs> DataSeriesChanged
dataSeries.DataSeriesChanged += handler
Evento levantado sempre que pontos são adicionados, removidos ou uma ou mais DataSeries properties changes
Campos
protected ISeriesColumn<TX> _xColumn
value = dataSeries._xColumn
A coluna X para isto DataSeries
protected ISeriesColumn<TY> _yColumn
value = dataSeries._yColumn
A coluna Y primária para esta DataSeries