顺便插一句,PM给我的要求是实现多个Y坐标,我的第一感觉是自己重新封装GDI+的功能,花了四五个小时的时间,总算也像模像样了,但距离实现灵活拖动,以及灵活缩放等还soooooo远, 而且我封装的这个图形库-_-看上去实在也是太过朴素;)
拿到ZedGraph代码的第一刻,粗略看了它的demo,感觉不错,但由于demo众多,也没怎么仔细看,没看到有多Y轴的demo,后来看到有个MultiY demo,这是后话。
就我这两天用ZedGraph库的感觉,简单说一下ZedGraph的用法。
要使用ZedGraph,第一步当然是要引用它,然后通过
获取到一个ZedGraphControl对象之后,就可以在myGC.GraphPane上画图了。
然后,要实现画曲线的功能,就要在画图板上添加曲线了,也就是
ZedGraph库最大的好处是把数据和曲线绑定起来了,这是通过PointPairList这个集合来实现的,要画所有的点,只需要把所需画的点Add至PointPairList中,然后在AddCurve方法中把该PointPairList作为参数传入即可。
另外,说到多Y轴的实现,通过Y2Axis就可以很容易的达到目的。
b.t.w ZedGraph库可以很方便的扩展,顺便提一下的是,从ZedGraphControl.cs这个类开始追踪,可以很方便找到入手的捷径,不过老外也真能写,光是ZedGraphControl.cs这个文件就接近4000行-_-
ps. 针对ZedGraph图形库的系列随笔会陆续放出来 ;)