图表集竖条标记

Chart set Vertical Bar Marker

在我的图表上,我想放置一个明显的红色垂直条,它从图表上的特定点向下延伸到 x 轴。有没有办法做到这一点?根据 documentation,这个选项似乎不可用,或者我找错了区域。

最明显的方法是添加一个VerticalLineAnnotation

这是一个例子:

首先我设置了一些东西:

int yourPointIndex = 635;
Series S1 = chart1.Series[0];
ChartArea CA1 = chart1.ChartAreas[0];

现在我创建 Annotation 并稍微设计一下样式:

VerticalLineAnnotation LA = new VerticalLineAnnotation();
LA.LineColor = Color.Red;
LA.LineWidth = 9;
LA.IsInfinitive = false;
LA.AnchorDataPoint = S1.Points[yourPointIndex]; ;

现在我把它放在有问题的 Point 上:

LA.X = S1.Points[yourPointIndex].XValue;
LA.Y = S1.Points[yourPointIndex].YValues[0];

// this makes the bar go down to the zero axis
LA.Height = LA.Y;
// this makes it go down all the way to the x-axis:
LA.Height = LA.Y - CA1.AxisY.Minimum;
// we should clip it to our chartarea:
LA.ClipToChartArea = CA1.Name;

最后它被添加到 ChartAnnotations 集合中。

chart1.Annotations.Add(LA);

请注意 Annotations 可以装饰并可移动..

注意:上面的代码是为 Winforms 编写和测试的,但是 MS Chart 控件在其所有版本中都非常相似..