1

我已经通过 devexpress winforms 控件绘制了一个图表。DateTime 在 X 轴上,Y 轴上的值很少。我提供的数据不包含定期的轴数据。例如,它将有今天、今天之后 3 天、今天之后 1 年等的数据——它们的位置不均等。我想突出显示已提供数据的数据点。我使用以下方法使网格线可见:

((XYDiagram)chartControl1.Diagram).AxisX.GridLines.MinorVisible = true;
((XYDiagramchartControl1.Diagram).AxisY.GridLines.Visible = true;
((XYDiagram)chartControl1.Diagram).AxisY.GridLines.MinorVisible = true;

但这会以相等的间隔和间距绘制网格线。我怎样才能特别突出我给出的数据点......

4

1 回答 1

3

我希望我理解正确:)

您可以使用恒定线

    private void Form1_Load(object sender, EventArgs e)
    {
        Series series1 = new Series("Series 1", ViewType.Point);
        series1.Points.Add(new SeriesPoint(1, 50));
        series1.Points.Add(new SeriesPoint(2, 150));
        series1.Points.Add(new SeriesPoint(4, 20));
        series1.Points.Add(new SeriesPoint(7, 210));
        series1.Points.Add(new SeriesPoint(12, 70));
        chartControl1.Series.Add(series1);

        XYDiagram diagram = chartControl1.Diagram as XYDiagram;
        foreach (SeriesPoint item in series1.Points)
        {
            DrawConstantLines(diagram, int.Parse(item.Argument), diagram.AxisX);
            DrawConstantLines(diagram, (int)item.Values[0], diagram.AxisY);
        }
    }

    private void DrawConstantLines(XYDiagram diagram, int value, Axis axis)
    {
        ConstantLine constantLine1 = new ConstantLine();
        axis.ConstantLines.Add(constantLine1);
        constantLine1.AxisValue = value;
    }
于 2013-08-07T08:52:40.960 回答