Oxyplot - 获取可见点数

时间:2016-12-16 13:30:08

标签: c# .net oxyplot

我正在使用OxyPlot在StairStepSeries中绘制大量数据。性能很好,但是如果我激活Markers则非常糟糕。因此,我想实施一项检查:只有在未超过一定数量的可见点时才能激活标记。

是否有可能只获得可见点数?我找不到解决办法。我只获得图表的总点数。

1 个答案:

答案 0 :(得分:1)

我自己没有对此进行测试。

public int GetNumberOfVisiblePointsOnScreen(StairStepSeries stairStepSeries)
{
    int numberOfVisiblePointsOnScreen = 0;
    foreach (DataPoint point in stairStepSeries.Points) {
        if (stairStepSeries.GetScreenRectangle ().Contains (stairStepSeries.Transform (point)))
            numberOfVisiblePointsOnScreen++;
    }
    return numberOfVisiblePointsOnScreen;
}

GetScreenRectangle()方法将为当前在屏幕上使用的系列提供Rectangle。遍历StairStepSeries中的所有DataPoints,并检查它是否在Current屏幕矩形中。