深入浅出CChart 每日一课——第七课 屌丝之殇,擎天一柱之柱图

上一课笨笨给大家介绍了CChart饼图的绘制方法,这一课介绍柱图,这也是应用非常广的一种图表形式。

按第一课的方法建立一个VC项目Lesson07。

同样我们只需要修改WM_CREATE的响应例程,如下。

 
case WM_CREATE:
	chartWnd.Attach(hWnd, kTypeStem);
	{
		double pY[5];
		pY[0] = 3.0;
		pY[1] = 5.0;
		pY[2] = 4.0;
		pY[3] = 2.0;
		chartWnd.GetChart()->AddStems(pY, 4);
		chartWnd.GetChart()->SetDataTitle("代理商甲销量", 0);
	}
	break;
 

上面用AddStems添加一个序列。

运行程序,得到图像如下。

下面我们给每根柱子加上标签。修改WM_CREATE消息的响应例程如下。

 
case WM_CREATE:
	chartWnd.Attach(hWnd, kTypeStem);
	{
		double pY[5];
		pY[0] = 3.0;
		pY[1] = 5.0;
		pY[2] = 4.0;
		pY[3] = 2.0;
		chartWnd.GetChart()->AddStems(pY, 4);
		chartWnd.GetChart()->SetDataTitle("代理商甲销量", 0);

		chartWnd.GetChart()->SetStemLabel(_T("一季度"), 0);
		chartWnd.GetChart()->SetStemLabel(_T("二季度"), 1);
		chartWnd.GetChart()->SetStemLabel(_T("三季度"), 2);
		chartWnd.GetChart()->SetStemLabel(_T("四季度"), 3);
	}
	break;
 

利用SetStemLabel可以修改柱子的标签。

运行结果如图。

前面只画了一个序列,CChart支持在柱图中绘制多个序列。添加新序列的方法完全一样。

下面继续修改WM_CREATE的响应例程。

 
case WM_CREATE:
	chartWnd.Attach(hWnd, kTypeStem);
	{
		double pY[5];
		pY[0] = 3.0;
		pY[1] = 5.0;
		pY[2] = 4.0;
		pY[3] = 2.0;
		chartWnd.GetChart()->AddStems(pY, 4);
		chartWnd.GetChart()->SetDataTitle("代理商甲销量", 0);

		chartWnd.GetChart()->SetStemLabel(_T("一季度"), 0);
		chartWnd.GetChart()->SetStemLabel(_T("二季度"), 1);
		chartWnd.GetChart()->SetStemLabel(_T("三季度"), 2);
		chartWnd.GetChart()->SetStemLabel(_T("四季度"), 3);

		pY[0] = 4.0;
		pY[1] = 1.0;
		pY[2] = 6.0;
		pY[3] = 3.0;
		chartWnd.GetChart()->AddStems(pY, 4);
		chartWnd.GetChart()->SetDataTitle("代理商乙销量", 1);
	}
	break;
 

运行效果如图。

最后我们给柱图加上标题。

在上面的break;一行前面插入一行。

 
chartWnd.GetChart()->SetTitle(_T("代理商销量"));
 


效果如图。

同学们移动一下鼠标,可以发现柱图同样有交互功能,这里就不细表了。

这节课也很简单,现在下课。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值