我在我的项目中使用了 ZedGraph,它很棒!但是还有一件事我想不通。我正在寻找一些直接在图表中绘制 LineItem 描述的可能性,如图所示:
http://www.imagesup.net/?di=113548312290
我尝试使用TextObj,但我仍然有一个问题正确计算角度,它不对应于线的斜率。谁能告诉我怎么了?PS:这可能是由于X轴和Y轴的范围不同,或者屏幕上这些轴的长度不同造成的?
        PointPair ptA = new PointPair(0, 100);
        PointPair ptB = new PointPair(100, 0);
        PointPairList ppl = new PointPairList();
        ppl.Add(ptA);
        ppl.Add(ptB);
        LineItem myCurve = zedGraphControl1.GraphPane.AddCurve(string.Empty, ppl, Color.Red, SymbolType.Circle);
        // centre of line
        PointPair pt = new PointPair(0.5 * (ptA.X + ptB.X), 0.5 * (ptA.Y + ptB.Y));
        TextObj text = new TextObj("desc", pt.X, pt.Y, CoordType.AxisXYScale, AlignH.Center, AlignV.Center);
        text.ZOrder = ZOrder.A_InFront;
        double dX = ptB.X - ptA.X;
        double dY = ptB.Y - ptA.Y;
        float alfa = (float)(Math.Atan2(dY, dX) * (180.0 / Math.PI));
        text.FontSpec.Angle = alfa;
        zedGraphControl1.GraphPane.GraphObjList.Add(text);
        zedGraphControl1.AxisChange();
        zedGraphControl1.Invalidate();
        zedGraphControl1.Refresh();