菜鸟新学ZEDGRAPH,有两个问题,求高手解答
1。我的ZEDGRAPH画出来后在窗体内拖动鼠标,它的坐标比例就随意放大了,然后我的图像就看不到了?怎么解决啊?
2。如何能使我画出来的图能局部放大,就像有的地方点一个放大镜一样就把那个局部放大了,以便我的两个曲线能做对比?以下是我在网上找的源码,好像没有对X轴和Y轴属性做处理,是不是这里有问题?
private void Form1_Load(object sender, EventArgs e)
        {
           
            double x, y1, y2;
            PointPairList list1 = new PointPairList();
            PointPairList list2 = new PointPairList();
            for (int i = 0; i < 36; i++)
            {
                x = (double)i + 5;
                y1 = 1.5 + Math.Sin((double)i * 0.2);
                y2 = 3.0 * (1.5 + Math.Sin((double)i * 0.2));
                list1.Add(x, y1);
                list2.Add(x, y2);
            }            // 创建红色的菱形曲线
            // 标记, 图中的 "Porsche"
            LineItem myCurve = zedGraphControl1.GraphPane.AddCurve("Porsche", list1, Color.Red, SymbolType.Diamond);            // 创建蓝色的圆形曲线
            // 标记, 图中的 "Piper"    
            LineItem myCurve2 = zedGraphControl1.GraphPane.AddCurve("Piper", list2, Color.Blue, SymbolType.Circle);            // 在数据变化时绘制图形
            this.zedGraphControl1.AxisChange();
            this.zedGraphControl1.Refresh();
        }

解决方案 »

  1.   

    你在ZedGraph的控件上右键一下下,你就发现有菜单可以控制了。
      

  2.   

     public void  zedshowN( ZedGraphControl zg,int n)
            {
           //zg.GraphPane.CurveList[n]
                try
                {
                    zg.GraphPane.CurveList[n].IsVisible = true;
                    //zg.ZoomOutAll(zg.GraphPane);
                    zg.RestoreScale(zg.GraphPane);
                    zg.AxisChange();
                    zg.Refresh();
                }
                catch{}
            }
            public void zedhideN(ZedGraphControl zg, int n)
            {
                //zg.GraphPane.CurveList[n]
                try
                {
                    zg.GraphPane.CurveList[n].IsVisible = false;
                    zg.AxisChange();
                    
                    zg.Refresh();
                }
                catch { }
            }