我已经通过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;
但这会以相等的间隔和间距绘制网格线。如何特别突出显示我给定的数据点...
我希望我能正确理解你:)
您可以使用恒定线!
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;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句