Teechart的入门使用-VS2005-VS2008

1Teechart版本
在这里使用的“TeeChart Pro Activex control v5”,安装程序在“TeeChart Pro Activex control v5.rar”里面。
2Teechart安装
点击后面的exe文件进行安装。
3Teechart入门演示
开发环境:VS2005
语言:VC++
1)创建MFC对话框程序
2添加Teechart控件到工具箱
双击对话框界面,会显示工具箱,在工具箱的空白位置右键点击,会出现下图,然后选择添加选项卡。如下图所示:
输入选项卡的名称“Teechart”,然后右键点击选择项,然后出现下图:
选择现代汉语频率词典“TeeChart Pro Activex Control v5”,然后点击确定按钮,会发现在工具栏的Teechart标签下面出现了Teechart控件。如下图所示:
3)添加相关类:
在类视图里面,右键点击项目名称,然后选择添加”->“,在下图中,选择“TypeLib中的MFC。如下图所示:
焦作大学学报
点击添加,然后出现下图,选择“TeeChart Pro Activex Control v5<1.0>”
4)界面操作
在对话框界面添加Teechart控件,如下图所示:
双击Teechart控件,然后出现下图的编辑界面,添加三个Series,然后点击“Close”按钮,如下图所示:
在对话框界面,为Teechart控件添加变量,默认的变量类型为CTchart,输入变量名。如下图所示:
点确定后,除了会自动添加控件变量以外,还会创建一个CTchart的类,这个是默认创建的。
5)代码添加
SimpleDemoDlg.cpp添加Series的头文件:
                #include "CSeries.h"
双击界面的“SHOW”按钮,然后添加下列代码:
                void CSimpleDemoDlg::OnBnClickedButtonShow(){    CSeries mycs = (CSeries)m_tChart.Series(0);    CSeries mycs1 = (CSeries)m_tChart.Series(1);    CSeries mycs2 = (CSeries)m_tChart.Series(2);    for (int i = 0; i < 1000; i++)        mycs.AddNullXY(i, 1.5*i+300, _T(""));    for (int i = 0; i < 2000; i++)        mycs1.AddNullXY(i, 3*i-1300, _T(""));    for (int i = 0; i < 300; i++)        mycs2.AddNullXY(1.8*i, i*i-130*i - 1000, _T(""));}
6)运行效果
F5运行后,点击“SHOW”按钮,就可以出现下列效果图:
MFC TeeChart 用法整理一
因工作需求,要用到TeeChart控件,发现TeeChartMFC下的资料很少。以下一些TeeChart的用法,大多是从网上七拼八凑得到的,还有一些是我自己摸索的,以下代码经均本人测试,测试环境vc++6.0
            TeeChart的安装方法网上有很多,这里不再赘述。把TeeChart控件添加到工程中后,
将其拖到对话框中,然后通过ClassWizard定义一个类变量m_TeeChart
TeeChart简介:
            TeeChart的主类是TChartTChart类存在众多的属性方法和事件,下面介绍一些主要的属性。
    1 TChart.Height图表的高度;可用下列语句获取或设置图表的高度
1 m_TeeChart.SetHeight(100); //设置图表高度为100
2 long Height_size = m_TeeChart.GetHeight(); //获取当前图表的高度
   2TChart.Width:图表的宽度;用法与高度一致,就不在赘述电商仓储系统设计
   3TChart.Header:图表的标题;图表可以拥有多级标题,可用下列语句设置图表的标题以及追加标题
1 m_TeeChart.GetHeader().GetText()
2    .SetItem(0, COleVariant(TeeChart 使用范例));
3 m_TeeChart.GetHeader().GetText().Add(COleVariant(“追加的标题));   
   4TChart.Series序列Series是要显示的数据的主体,在一个图表中可以有一个或者多个序列,每一个序列可以有不同的显示类型,例如LineBarPic等等,稍后将单独描述。
   5TChart.Axis:坐标轴;用来设置坐标轴的属性
1 m_TeeChart.GetAxis().GetBottom().GetTitle().SetCaption("X轴的标题");
2 // 设置X轴的标题,准确的说应该是设置底部轴的标题
3 m_TeeChart.GetAxis().GetLeft().GetTitle().SetCaption("Y轴的标题");
4 // 设置左侧轴的标题
5 m_TeeChart.GetAxis().GetBottom().SetMinMax(0, 100);
6  //设置X轴的范围
    6TChart.Legend:图例,图例就是下图中右侧的部分

    下列语句可以将图列隐藏
1  m_TeeChart.GetLegend().SetVisible(FALSE); //隐藏图例
MFC TeeChart 用法整理二 (画二维图)
     画图需要添加序列,添加序列有两种方式。
1、右击控件选择Properties,在TeeChart Pro Editor选项卡中单击Edit Chart,就可以在打开的对话框中编辑TeeChart控件的属性,如下图。
单击Add按钮,选择第一个Line类型作为示范,如何点击OK。如下图。
添加完序列之后,接下来就要往序列中添加数据了。有三种方式添加数据:
第一种方法只能添加一些随机数
m_TeeChart.Series(0).FillSampleValues(50); //Series函数的参数表示序列的索引值,这里只有一个Line甲基丙烯酸烯丙酯序列,因此Line序列的索引值为0
第二种方法可以添加指定的数据:
for(int i=0; i<10; i++)
    m_TeeChart.Series(0).AddXY(i, rand()%10, NULL, RGB(255,0,255));  //AddXY函数中第一个参数是X轴的数据,第二个参数是Y轴的数据,
//第三个参数是X轴标记,第四个参数表示线条的颜,rand()%10,表示生成10以内的随机数
此代码执行的效果如下图所示
我们在第三个参数上添加一个字符串
for(int i=0; i<10; i++)
    m_TeeChart.Series(0).AddXY(i, rand()%10, "时间", RGB(255,0,255));

显示结果如下:
如果不想显示右侧的图例,可以用下列语句将其隐藏起来:
m_TeeChart.GetLegend().SetVisible(FALSE);

第三种方法可以添加指定的数组:
#define MAX_SIZE 20
//定义数组
        COleSafeArray XValues;
    COleSafeArray YValues;
    //定义的长度只要大于所创建的数组的长度即可
    DWORD Xnum[] = {MAX_SIZE};
    DWORD Ynum[] = {MAX_SIZE};
    XValues.Create(VT_R8, 1, Xnum);
    YValues.Create(VT_R8, 1, Ynum);
    double tmp;
    long index=0;
    for(int i=0; i<MAX_SIZE; i++)
    {
//X    陈家案            tmp = i;
        XValues.PutElement(&index, &tmp);
//Y        tmp = rand()%50;
        YValues.PutElement(&index, &tmp);
                index++;
        }
  //向序列中添加数据
        m_TeeChart.Series(0).AddArray(MAX_SIZE, XValues, YValues);



如果标记Y轴的值,可以用下列语句:
m_TeeChart.Series(0).GetMarks().SetVisible(TRUE);

设置X轴与Y轴的标题
m_TeeChart.GetAxis().GetLeft().GetTitle().SetCaption("路程");
m_TeeChart.GetAxis().GetBottom().GetTitle().SetCaption("速度");


2、第二种添加序列的办法是用代码添加:
m_TeeChart.AddSeries(0); //AddSeries函数的参数表示添加序列的类型 0表示添加的序列是折线图     
画多条曲线的折线图
m_TeeChart.GetAspect().SetView3D(FALSE); //2D的效果显示
m_TeeChart.AddSeries(0); //添加一个Line序列
m_TeeChart.AddSeries(1); //添加一个Line序列
m_TeeChart.Series(0).FillSampleValues(50); //向第一个Line序列中添加数据
m_TeeChart.Series(1).FillSampleValues(50); //向第二个Line序列中添加数据
m_TeeChart.Series(0).SetColor(RGB(255, 0, 0)); // 设置第一条曲线的颜为红
m_TeeChart.Series(1).SetColor(RGB(0, 255, 0)); //设置第二条曲线的颜为绿
m_TeeChart.Series(0).SetTitle("时间"); //设置第一条曲线的图例标题为 时间
m_TeeChart.Series(1).SetTitle("速度"); //设置第二条曲线的图例标题为 速度
// m_TeeChart.Series(0).GetMarks().SetVisible(TRUE); //显示第一条曲线的标记
// m_TeeChart.Series(1).GetMarks().SetVisible(TRUE); //显示第二条曲线的标记
河南发生纵火案

本文发布于:2024-09-22 13:27:27,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/292538.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:添加   序列   设置   图表   显示   标题   控件
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议