在Oxyplot Line系列中隐藏一些点

时间:2018-05-10 12:12:40

标签: wpf oxyplot

我需要在oxyplot line系列中显示/隐藏一些数据点。可能吗? 虽然有些标记是不可见的,但该行应该通过不可见的标记。

1 个答案:

答案 0 :(得分:0)

您可以使用两个系列来实现此目的。第一个将绘制没有标记的完整点(和线)。第二个系列将绘制可见点(使用标记,但线条样式设置为无)。例如

 DataPoint[] points = new DataPoint[]
        {
            new DataPoint(1,12),
            new DataPoint(2,10),
            new DataPoint(3,9),
            new DataPoint(4,13),
            new DataPoint(5,14),
            new DataPoint(6,10)
        };
        var seriesComplete = new OxyPlot.Series.LineSeries();

        seriesComplete.Points.AddRange(points);


        var seriesVisible = new OxyPlot.Series.LineSeries();
        seriesVisible.Points.AddRange(points.Where(x => x.Y % 2 == 0));
        seriesVisible.MarkerFill = OxyColors.Blue;
        seriesVisible.MarkerType = MarkerType.Circle;
        seriesVisible.MarkerSize = 10;
        seriesVisible.LineStyle = LineStyle.None;

        this.MyModel.Series.Add(seriesComplete);
        this.MyModel.Series.Add(seriesVisible);

结果附加为图片enter image description here