读书人

深入显出CChart 每日一课第十二课

发布时间: 2013-10-08 16:55:16 作者: rapoo

深入浅出CChart 每日一课——第十二课 共享X轴视图,穆斯林的婚礼

这一课笨笨给大家介绍另一种具有分层功能的视图,名为共享X轴视图。

和上一课的分层视图相比,共享X轴视图的特点当然就是所有图层只有一个X轴,也就是所有数据在X方向的比例尺是一样的,实际问题中大多数情况都是这样的,所以笨笨单独设置了这么一个视图类型。

其实还有另外一个区别,就是共享X轴视图的标题和图例也是所有图层共享的,而分层视图则每个图层单独绘制。后面这一点使得分层视图有时候显得很诡异,呵呵,而共享X轴视图就自然多了。

下面以一个实例来介绍共享X轴视图。

用第一课的方法建立一个VC工程Lesson12。其中WM_CREATE的响应例程如下。

 case WM_CREATE:chartWnd.Attach(hWnd, kTypeShareX);chartWnd.GetChart()->ResizePlots(2);double pX[200], pY[200];int i;for(i=0; i<200; i++){pX[i] = i+1;pY[i] = (i+1)*(i+1);}chartWnd.GetChart()->AddCurve(pX, pY, 200, 0);for(i=0; i<200; i++){pY[i] = sin(i*2.0*3.1415926536/200.0);}chartWnd.GetChart()->AddCurve(pX, pY, 200, 1);chartWnd.GetChart()->SetTitle(_T("共享X轴视图"));break; 

共享X轴视图的代号为kTypeShareX

同学们容易发现,代码和上一课很类似的。只是让两条曲线的X范围一样了。

由于调用了数学库函数,需要包含头文件。

 #include <math.h> 

运行效果如图。

深入显出CChart 每日一课——第十二课 共享X轴视图,穆斯林的婚礼

上图中两个图层的纵轴都放在左边,有点不自然。

其实笨笨还实现了一个左右视图,这是一个具有两个图层的共享X轴视图,纵轴左右各一个,用起来非常方便,这里就不仔细介绍了。

这一课也非常简单。

下节课介绍等高线图的姊妹篇——云图,敬请期待。

读书人网 >编程

热点推荐