标记并圈出zedgraph中的特定点

时间:2012-04-03 02:34:38

标签: c# zedgraph

我目前正在做一个项目,我已经设法确定了我想要的峰值。但是,我想做更多的事情,比如用附加标签的特定点盘旋。是否有可能在Zedgraph中做到这一点?

我附上了我的代码片段,其中只包含一个文字标签,我想做更多,以便人们更容易识别这一点。

PointPair pt = myCurve.Points[i-1];
const double offset = 0.8;

TextObj text = new TextObj("P", pt.X, pt.Y + offset,
CoordType.AxisXYScale, AlignH.Left, AlignV.Center);
text.ZOrder = ZOrder.A_InFront;
text.FontSpec.Border.IsVisible = false;
text.FontSpec.Fill.IsVisible = false;
text.FontSpec.Fill = new Fill( Color.FromArgb( 100, Color.White ) );

myPane.GraphObjList.Add(text);

任何帮助表示赞赏!谢谢!

1 个答案:

答案 0 :(得分:4)

按如下方式创建一个LineItem

LineItem line = new LineItem("Point", new double[] {pt.x}, new double[] {pt.y}, Color.Black, SymbolType.Circle);
line.Symbol.Size = 20;
line.Symbol.Fill = new Fill(Color.Transparent);
myPane.CurveList.Add(line);

这应创建一个以您的点为中心的大空圆圈。显然,您可以根据需要调整颜色和大小,如果需要,可以调整ZOrder。您可能希望调整图例,使其不包括此点。或者,您可以使用标签命名此行,并将其作为标记方式留在图例中。标签的唯一另一种方式是做你正在做的事情,因为我不确定如何将标签直接关联到一条线。