VS使用TeeChart绘图控件

合集下载

teechart控件用法

teechart控件用法

teechart控件用法
TeeChart是一个图表控件,可以在.NET应用程序中创建各种类型的图表。

使用TeeChart控件,您可以在应用程序中显示数据的图形表示形式,从而直观地分析数据并更好地理解数据。

以下是使用TeeChart控件的一般步骤:
1.在您的项目中添加TeeChart控件。

您可以通过在工具箱中拖放TeeChart控件来将其添加到您的窗体中。

2.配置TeeChart控件的属性。

您可以通过属性窗口或代码来配置TeeChart控件的属性,例如图表类型、数据系列、图例等。

3.为TeeChart控件添加数据。

您可以通过为TeeChart控件的Series属性添加数据来创建图表。

4.调整TeeChart控件的大小和其他属性。

您可以调整TeeChart 控件的大小和其他属性,以使其适合您的应用程序。

5.保存和运行您的应用程序。

保存您的项目并运行它,以查看您的图表是否按预期显示。

在使用TeeChart控件时,您可以使用许多不同的属性和方法来配置和控制图表的行为和外观。

例如,您可以更改图表的标题、轴标
签和图例,也可以更改数据系列的颜色和样式。

此外,您还可以使用TeeChart控件的事件来响应用户与图表交互的方式,例如单击或双击图表元素。

总之,使用TeeChart控件可以方便地在.NET应用程序中创建各种类型的图表,并且可以轻松地配置和控制图表的外观和行为。

图解VS2010 & TeeChart8快速入门

图解VS2010 & TeeChart8快速入门

图解VS2010 & TeeChart8快速入门TeeChart是Steema Software开发的图表图形组件,它提供了上百种2D和3D图形风格、多达几十种数学和统计功能,在图表图形开发领域占有举足轻重的作用。

由于其强大之处,许多软件基于TeeChart开发。

作者在网上找了大量的资料,但是很不幸的是,关于介绍VS2010中如何使用TeeChart的资料少之又少,而且比较分散。

本文的目的是带领TeeChart的初学者快速的在VS2010中使用TeeChart组件构建起自己的图形图表应用。

本文将以TeeChart Pro 提供的FastLine作为示例,带领大家进入TeeChart的世界。

本文的作者也是TeeChart的初学者,在整理和归纳这些资料的时候,做了大量的试验,不过有些示例代码的实现可能有更好的方式来实现。

在此请各位看官在发现有更好的实现方式、或者有一些扩展的话,敬请联系本人QQ:41607842。

我予以更正,谢谢!1.准备要使用TeeChart Pro组件,需要下载TeeChart8.ocx文件。

文件TeeChart8.ocx可放置于系统中的任何位置。

为了方便使用和管理,我按照如下文件夹结构存放我的工程文件和.ocx文件:图12.在VS2010中新增一个TeeChart8 Pro的FastLine资源首先打开一个工程文件,然后在菜单栏,选择工具 选择工具箱,将TeeChart8.ocx添加进来,如下图:图2这样,我们就将TeeChart添加到我们的组件列表中来了。

为了能够使用FastLine,我们选择TeeChart Pro Activex Control v8,如下图所示:图3点击确定以后,打开工程的资源管理器,在右侧的工具箱中可以看到出现了一个新的工具TeeChart pro Activex control v8,如下图所示:图4点击这个工具,在对话框中拖拉出一个控件出来:图5鼠标右击该控件,选择属性,然后可以调出该控件的属性,这里我们将该控件的ID改为:IDCTCHART:图6然后,点击属性页,可以对该控件进行进一步的设置。

TEECHART控件使用笔记

TEECHART控件使用笔记

series.h
void SetHorizontalAxisCustom(long nNewValue); 设置编号为 nNewValue的自定义轴为垂直轴
void SetVerticalAxisCustom(long nNewValue); 设置编号为 nNewValue的自定义轴为水平轴
m_ctrlChart_2.Series(1).SetVerticalAxisCustom(m_2);
//设置相同的轴为两条曲线的X轴 (轴编号为m_3)
m_ctrlChart_2.Series(1).SetHorizontalAxisCustom( m_3);
CAxis GetCustom(long CustomAxisIndex); 得到指定编号所对应的轴的对象
long GetCustomCount();
void RemoveCustom(long CustomAxisIndex); 删除指定编号的轴
void RemoveAllCustom(); 删除所有轴
m_ctrlChart_2.GetAxis().GetCustom(m_2).SetEndPosition(100);
axis.h
double GetStartPosition();
void SetStartPosition(double newValue); //设置在坐标轴上的起始比例
double GetEndPosition();
void SetEndPosition(double newValue); //设置在坐标轴上的结束比例
TeeChart控件使用代码添加自定义坐标轴的方法(在VS2010下,使用C++实现)

如何使用TeeChart控件

如何使用TeeChart控件

如何使用TeeChart控件1.注册TeeChart5.ocx先将TeeChart5.ocx文件拷贝到工程文件夹中。

然后,打开命令提示符,cd进入TeeChart5.ocx所在路径,输入“regsvr32 TeeChart5.ocx”,注册TeeChart5.ocx。

注册成功后,会有一个提示框。

如果不想使用可以输入命令“regsvr32 –u TeeChart5.ocx”解除注册。

2.新建工程,将自带的类放到一个文件夹中,例如“src”。

因为添加TeeChart后会生成很多新的类,看起来不方便。

3.将TeeChart控件加到Control List中Project->Add To Project->Components and Controls->Registered ActiveX Control-> TeeChart Pro Activex control v5->insert这时,在Control List的右下角多了一个圆形的小图标,在类视图中多出了许多的新类,将他们放在一个文件夹中,例如“teeChart”。

以下,将说明如何具体的使用TeeChart控件4.拖拽TeeChart到对话框中拖拽TeeChart到对话框中,调整TeeChart的大小,稍作修改,界面设计就完成了。

右击控件->属性->teechart pro editer选项卡->edit chart。

出现一个名为Edit的对话框。

这个对话框非常重要,包括了teechart的各种属性。

简要介绍一下各属性:Series:该属性包含需要绘制的图表的类型,如曲线、饼图、柱状图等等,种类很多。

Chart:该选项包含了图表的显示部分的很多属性,如坐标轴、背景、标题等等。

Data:绘制图表需要的数据。

Export:包含了一些将图表导出为图片格式的选项。

Print:打印设置。

Themes:图表的主题,主要是显示方式。

VC中使用TeeChart绘制实时曲线

VC中使用TeeChart绘制实时曲线

VC中使用TeeChart绘制实时曲线上网找了一个teechart8的Activex版本,在VC6下使用正常,感觉功能挺强大的,于是决定认真用一用,我是完全完全的新手,请高手们直接忽略我,或者给我提些好的建议。

我得到的是一个teechart8.ocx文件,这是Activex的文件,使用之前先注册一下,将该文件放入系统目录下,然后打开命令提示符,或者直接在运行窗口输入:regsvr32 T eeChart8.ocx,然后会有一个注册成功的提示框,说明我们的ActiveX控件注册成功,在VC6下就可以使用了。

如果不想使用了,可以使用regsvr32 -u TeeChart8.ocx 解除对teechart8的注册。

我的第一个任务是熟悉teechart控件。

首先新建一个基于MFC的exe工程,选择对话框,其他默认。

进入工程以后可以看到类视图中只有系统生成的默认的几个类,我先在类视图中在工程名上点右键新建两个文件夹,一个叫src,一个叫tee,然后把默认生成的几个类(dlg,app,about三个类)拖放到src文件夹中。

做这一步实际上没有什么实质的意义,只是为了看起开比较方便,因为一会儿添加了teechart8以后会有很多的类添加进来,看起来非常困难,所以先提前把他们分开。

闲话不多说,进入资源视图,点击主对话框后,删除todo那个静态文本。

下一步我们要在这个对话框上放置一个teechart图表,但是工具栏中没有,所以需要先添加一下。

依次点击工程-》增加到工程-》components and controls,进入对话框后选择register ed ActiveX controls,找到TeeChart Pro Activex control v8后点击insert,会弹出添加类的对话框,左边的列表里面是可以选择添加的类,现在我还不太了解具体类的作用,所以只好一并添加了,点击确定以后回到资源视图会发现工具栏下面多累一个圆形的小图标,这就是我们的teechart8控件了。

teechart用法

teechart用法

teechart用法一、概述Teechart是一款基于JavaScript的开源图表库,用于在Web应用程序中创建各种类型的图表。

它提供了丰富的图表类型和配置选项,可以轻松地创建出美观、交互式和动态的图表。

二、安装与引入要使用Teechart,您需要将其添加到您的项目中。

可以通过以下方式安装和引入Teechart:1. 使用npm安装:在终端中运行`npm install teechart`命令,即可安装Teechart库及其依赖项。

2. 在您的Web应用程序中,将Teechart的CDN链接添加到您的HTML文件中,以便在页面中加载Teechart库。

三、基本用法以下是Teechart的基本用法示例:1. 创建一个Chart对象:使用Teechart提供的Chart构造函数创建一个Chart对象,并传递所需的配置选项。

```javascriptvar chart = teechart.create({container: 'chart-container', // 图表容器元素的选择器title: 'Basic Usage', // 图表标题xAxis: { // X轴配置type: 'value', // X轴类型为数值类型minimum: 0, // X轴最小值maximum: 100, // X轴最大值interval: 25 // X轴刻度间隔},yAxis: { // Y轴配置type: 'value', // Y轴类型为数值类型minimum: 0, // Y轴最小值maximum: 200, // Y轴最大值interval: 25 // Y轴刻度间隔},series: [{ // 数据系列配置data: [50, 70, 80, 90, 75], // 数据数组type: 'line' // 数据系列类型为线型图}]});```2. 绑定事件:可以通过监听Chart对象上的事件来执行特定的操作,例如数据更新、图表交互等。

Teechart的入门使用-VS2005-VS2008

Teechart的入门使用-VS2005-VS2008

1、Teechart版本在这里使用的“TeeChart Pro Activex control v5”,安装程序在“TeeChart Pro Activex control v5.rar”里面。

2、Teechart安装点击后面的exe文件进行安装。

3、Teechart入门演示∙开发环境: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); f or (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控件,发现TeeChart在MFC下的资料很少。

VS_MSChart控件的安装及应用

VS_MSChart控件的安装及应用

VS_MSChart控件的安装及应用1. 安装在VS中使用 Chart 控件的要求是 .net framework service pack 1准备 4 个文件,分别是:dotnetfx35sp1.exe(若当前 framework 版本为 sp1.1 就不需要装这个了)MSChart.exeMSChart_VisualStudioAddOn.exeMSChartLP_chs.exe顺序:MSChart.exeMSChart_VisualStudioAddOn.exe(至此,打开 VS 可看到工具箱中新增了[data]选项卡,下面有 Chart 控件)注意:安装时 VS 需要关闭安装中遇到的问题的小结:运行 dotNetFx35setup.exe 时,首先会提示下载,下载完毕之后进入安装。

但安装出错,报错原因为 dotnetfx2.0 SP1、dotnetfx3.0 SP1 安装不正确,错误代码 1603。

根据网上的资料,需要先清除系统中所有的 .net framework,然后重新安装。

清除时使用 microsoft 的工具dotnetfx_cleanup_tool 完全清除。

之后关闭 Cryptographic Services 服务,并删除system32\catroot2 目录下的所有内容。

再重新启动 Cryptographic Services 服务。

打开 dotnetfx35\wcu\dotNetFramework\dotNetFX30 目录,找到 WIC_x86_enu.exe,点击安装。

之后安装 dotnetfx35\wcu\dotNetFramework 目录中的 dotNetFx35setup.exe 独立安装包即可成功。

2. 使用需要添加如下引用System.Windows.Forms.DataVisualization.dll并导入如下命名空间using System.Windows.Forms.DataVisualization.Charting;但是这个命名空间只有在安装了 ChartControl.exe 之后才能在添加引用窗口中的 .NET 组件中找到,但是要安装 ChartControl 组件,需要当前的系统环境为 .net framework 3.5 SP1。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

VS2010 使用TeeChart绘图控件- 之一- 控件和类的导入vs2010的用法和vc6有很大的不同,特别是在一些函数调用那里,当然。

控件导入也是很不一样的安装好控件后就可以在工程里加入teechart控件了加入方法有如下几种:1.添加Teechart控件1.1 插入Teechart控件1.1.1 插入控件新建一个对话框工程,在对话框上点击鼠标右键,弹出的菜单里选择“插入ActiveX控件”然后弹出的对话框里选择TeeChart控件这时对话框就有TeeChart控件了1.1.2 vs2010另外一种插入控件的方法vs2010对话框设置的工具栏上就有许多控件了,若想把我们常用的控件也加到工具栏上以后使用就很方便了,下面说的这种方法就是把控件加入工具栏里。

方便以后的调用在工具栏的空白处点击右键,选择添加选项卡这时vs就会新建一个选项卡,自己可以定义一个名称,这里命名为绘图控件为选项卡添加项:在新建的选项卡的空白处点击右键,选择“选择项”由于控件比较多,会耗费一定的时间打开这个选择项,别以为死机了,耐心等个几十秒吧在打开的对话框中选择选择com标签,选择teechart控件这样teechart控件就会在你的工具栏新加的选项里了,以后都会存在(我添加TeeChat的同时还把其他的一些控件添加进去了)1.1.3 控件属性设置双击控件进行相关设置这里添加一个快速线图-Fast Line若数据量特别大,可以在Series标签里的Format的Draw all选项去掉在Chart标签里还可以设置坐标轴的名称属性等,这里先不详细讲述属性的设置2.为控件添加类vs2010与vc6不一样,vs2010的控件对应的类添加相对比vc6麻烦这里就对刚刚加入的TeeChart控件加入相关的类2.1 添加TypeLib的mfc类(1)选择vs菜单“项目”-“添加类”(注意这时类视图树形控件选中最顶端的父节点)(2)添加TypeLib的mfc类(3)在可用的类型库里选择teechart5(4)在接口里就有TeeChart对应的所有类了,这里TChart是必须的接口,其他的可以根据需要添加(5)点击完成就把CTChart这个类添加进工程里了其实第(2)步可以选择ActiveX控件的Mfc类,操作方法雷同,不过这时是只列出对应的接口3.把TeeChart控件和对象关联3.1 为控件关联对象在控件上点击右键,选择添加变量,即可为控件关联对象3.2 去掉vs默认的初始化不知为何vs会默认给添加的变量初始化0,这个初始化一定要去掉否则无法使用public: CTchart1 m_Chart;CTeeChartDlg::CTeeChartDlg(CWnd* pParent/*=NULL*/): CDialogEx(CTeeChartDlg::IDD, pParent){m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);}void CTeeChartDlg::DoDataExchange(CDataExchange* pDX){CDialogEx::DoDataExchange(pDX);DDX_Control(pDX, IDC_TCHART1, m_Chart);}这时TeeChart就可正常使用了VS2010 使用TeeChart绘图控件- 之二- 绘制图形(折线图,柱状图)1.前期准备具体可见VS2010 使用TeeChart绘图控件- 之一控件和类的导入1. 1 添加TeeChart控件,给控件添加变量m_TeeChart添加TeeChart控件,右击控件,选择添加变量,vs会自动给我们引入CTchart1这个类,但是只有这个类,我们是远远不够的,需要添加teechart其他相关的类,添加方法在之前已经讲过,不再重复。

1.2. 引入必要的头文件其实之前的方法比较麻烦,更简单就是通过类向导,导入类型库的类如图进入类向导,选择添加类按钮的下拉菜单,选择类型库中的MFC 类选择teechart5即可暂时引入#include "CSeries.h"#include "CAxis.h"#include "CAxes.h"#include "CLegend.h"需要还可以继续在之后引入--------------------------------------------------------------------------------------------------------------------------------2. teechart 画图- 折线图TeeChart 画图步骤一般是先获得图线序列CSeries,再给Series添加点;添加点可以用函数AddXY,或者AddArray。

AddArray要比AddXY 的效率高出很多,其比较可见TeeChart绘图控件- 之三- 提高绘图的效率2.1 清除图形在画线之前把图形清除一下,否则会覆盖,清除可用CSeries的函数Clear();但是当添加多个Series后要对所有Series都clear,这是很蛋疼的,因为你有时都不知道有多少个Series,这样可以先获得Series的总数在clear代码如下for(long i =0;i<m_TeeChart.get_SeriesCount();i++){((CSeries)m_TeeChart.Series(i)).Clear();}通过CTchart 的get_SeriesCount函数获得所有图像序列,再全部清除,这个函数经常用到,可用定义为类成员函数,这里是个对话框CTChartDlgvoid CTChartDlg::ClearAllSeries(void){for(long i =0;i<m_TeeChart.get_SeriesCount();i++){((CSeries)m_TeeChart.Series(i)).Clear();}}好了现在开始说说怎么画折线图2.2 普通连线图一般我们画的图都属于这种,就是把点连接起来,选择fast line 的Normal,就是普通连线图在需要画图的地方先要获得曲线序列Series,然后通过画图函数AddXY,或者AddArray作图。

2.2.1 普通线图- AddXY下面演示AddXY的方法AddXY就是一个一个加入点,在点数不多,且需要动态显示的时候是不错的选择。

点数多的情况下嘛,那就还是用AddArray了先看看AddXYconst UINT nDATALENGTH=100;double dData[nDATALENGTH];for (int i=0;i<nDATALENGTH;i++){dData[i] = 100 * sin((float)i)*cos((float)4*i);}//ClearAllSeries();CSeries lineSeries = (CSeries)m_TeeChart.Series(0);lineSeries.Clear();//在最前面加上ClearAllSeries(ClearAllSeries 是自己写的函数)就不用了for(int i=0;i<nDATALENGTH;i++){lineSeries.AddXY((double)i,dData[i],NULL,0);}由于在TeeChart里,只加了一个FastLine,所以Series(0)就算Fast Line,代码首先获得图像序列m_TeeChart.Series(0);然后再调用这个序列来作图,作图前先清空图像,用ClearAllSeries()也可以然后就是一个点一个点的往里加了做出来的效果:AddXY的第一个参数是x点坐标,第二个是y点坐标,第三个参数是为了使x坐标特殊显示,这是会替换掉x坐标的显示内容,如我想显示“点xx“可以这样CString str;for(int i=0;i<nDATALENGTH;i++){str.Format(_T("点%d"),i);lineSeries.AddXY((double)i,dData[i],str,0);}第四个参数在线图里不起作用,在柱状图里可以设置颜色2.2.2 普通线图- AddArray在数据量特别大时,强烈建议使用AddArray函数AddArray的函数声明如下void AddArray(long ArraySize, VARIANT& YArray, VARIANT& XArray);x,y是两个VARIANT的数据类型,VARIANT有个类型是VT_ARRAY可以给VARIANT赋一个数组进去具体操作如下:方法1:const UINT nDATALENGTH =100;double dData[nDATALENGTH];for (int i=0;i<nDATALENGTH;i++){dData[i] =100*sin((float)i)*cos((float)4*i);}//声明如下数据:VARIANT vAX,vAY;SAFEARRAY* psax;SAFEARRAY* psay;SAFEARRAYBOUND rgsabound;//初始化rgsabound.cElements=nDATALENGTH;rgsabound.lLbound=0;psax=SafeArrayCreate(VT_R8,1,&rgsabound);//分配空间psay=SafeArrayCreate(VT_R8,1,&rgsabound);vAX.vt=VT_ARRAY|VT_R8;//设置为double型数组,VT_R8就是指double vAX.parray=psax;//把内容加入VARIANT中vAY.vt=VT_ARRAY|VT_R8;vAY.parray=psay;//这时VARIANT 就可以加入数据了double dtemp;//用来临时存放x坐标for(long i=0;i<nDATALENGTH;i++){dtemp = i;SafeArrayPutElement(psax,&i,&dtemp);dtemp = dData[i];SafeArrayPutElement(psay,&i,&dtemp);//更简单写法//SafeArrayPutElement(psay,&i,dData+i);}//开始画图CSeries lineSeries = (CSeries)m_TeeChart.Series(0); lineSeries.Clear();lineSeries.AddArray(nDATALENGTH,vAY,vAX);方法2:这时我看TeeChart官方实例找到的方法,相对简单点COleSafeArray XValues;COleSafeArray YValues;DWORD numElements[] = {nDATALENGTH};// 创建安全数组XValues.Create(VT_R8, 1, numElements);YValues.Create(VT_R8, 1, numElements);// 初始化long i;double dval;for(i=0; i<nDATALENGTH; i++){dval = i;XValues.PutElement(&i, &dval);dval = dData[i];YValues.PutElement(&i, &dval);//YValues.PutElement(&i, dData+i);};CSeries lineSeries = (CSeries)m_TeeChart.Series(0); lineSeries.Clear();lineSeries.AddArray(nDATALENGTH,YValues,XValues);2.3 去除/显示legend如果不想要右边那一栏数据显示,可以通过代码去除CLegend是用来控制这个显示的CLegend legend = (CLegend)m_TeeChart.get_Legend();legend.put_Visible(FALSE);可以用一个check控件控制器显示状态添加单选控件,id为IDC_CHECK_ShowLegend,单击响应void CTChartDlg::OnBnClickedCheck_ShowLegend(){CLegend legend = (CLegend)m_TeeChart.get_Legend();if(BST_CHECKED == ((CButton*)GetDlgItem(IDC_CHECK_ShowLegend) )->GetCheck()){legend.put_Visible(TRUE);}else{legend.put_Visible(FALSE);}}效果:不用代码的话可以通过设置控件属性明显,这没有代码灵活2.4 改变线图颜色默认设置是红,我要设置成其他颜色可以用put_Colour如上代码的lineSeries最后加一个,就会变成RGB(255,0,255)的颜色了lineSeries.put_Color(RGB(255,0,255));效果:3. teechart 画图- 柱状图3.1 添加柱状图这时会多一个图形注意这里默认是绿色的,等下会发现画出来的不一样3.2 AddXY方法和线图没什么区别,直接上码:const UINT nDATALENGTH =20;double dData[nDATALENGTH];for (int i=0;i<nDATALENGTH;i++){dData[i] = abs(100*sin((float)i));}//ClearAllSeries();CSeries barSeries = (CSeries)m_TeeChart.Series(1);for(int i=0;i<nDATALENGTH;i++){barSeries.AddXY((double)i,dData[i],NULL,0); }注意不是Series(0)了我擦~那效果加个abs,好看很多~~3.3 改变柱状图的颜色为啥是黑色的?设置了绿色的,我一开始也以为坑爹的设置没有用,后来研究了一下发现时AddXY的第四个参数起作用的上面的图我们是这样加的barSeries.AddXY((double)i,dData[i],NULL,0);第四个参数0就相当于RGB(0,0,0),这第四个参数就是设置颜色的了把程序稍作修改for(int i=0;i<nDATALENGTH;i++){i%2==0? barSeries.AddXY((double)i,dData[i],NULL,RGB(255,255 ,0)): barSeries.AddXY((double)i,dData[i],NULL,RGB(0,255,2 55));}牛x3.4 去除/显示数据标示好吧又遇到问题了,去掉上面的标示ok,那个标示是用CMarks管理的,加入这个类就行了,用类向导,加入CMarks#include "CMarks.h"添加单选控件 IDC_CHECK_Marksvoid CTChartDlg::OnBnClickedCheckMarks(){CSeries barSeries = (CSeries)m_TeeChart.Series(1);CMarks SeriesMarks = (CMarks)barSeries.get_Marks();if(BST_CHECKED == ((CButton*)GetDlgItem(IDC_CHECK_Marks))->Ge tCheck()){SeriesMarks.put_Visible(TRUE);}else{SeriesMarks.put_Visible(FALSE);}}效果:3.5 AddArray 给柱状图添加数据和line一样const UINT nDATALENGTH =20;double dData[nDATALENGTH];for (int i=0;i<nDATALENGTH;i++){dData[i] = abs(100*sin((float)i));}COleSafeArray XValues;COleSafeArray YValues;DWORD numElements[] = {nDATALENGTH};// 创建安全数组XValues.Create(VT_R8, 1, numElements);YValues.Create(VT_R8, 1, numElements);// 初始化long i;double dval;for(i=0; i<nDATALENGTH; i++){dval = i;XValues.PutElement(&i, &dval);dval = dData[i];YValues.PutElement(&i, &dval);//YValues.PutElement(&i, dData+i);};//ClearAllSeries();CSeries lineSeries = (CSeries)m_TeeChart.Series(1); lineSeries.AddArray(nDATALENGTH,YValues,XValues);这时出现的图像就是默认的颜色了想改颜色!没问题,还是用put_Color barSeries.put_Color(RGB(255,0,0));TeeChart绘图控件- 之三- 提高绘图的效率TeeChart是个很强大的控件,其绘图能力之强,其他控件难以比拟,但是有个问题就是他的绘图速度,其实TeeChart绘图速度还是很快的,只是大家一直都没正确运用其功能所以导致绘图速度慢的假象。

相关文档
最新文档