




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
TeeChart使用指南可以看这个地址:/develop/web/asp/article/20010417001.htmTeeChart使用指南TeeChart控件介绍TeeChart Pro ActiveX是西班牙Steema SL公司开发的图表类控件,主要用来生成各种复杂的图表。熟悉Delphi和C Builder的编程人员对它不会陌生,因为在Delphi和C Builder里包括了TeeChart的VCL版本。TeeChart使用目的如果你需要在程序中制作曲线图、条状图、饼状图等等,使用这个控件都将是你的明智选择。它因为是已经被封装好的产品,所以使用方便,可控性强,不过有的时候会有点小BUG。最好能找到源码,并自己打几个补丁。TeeChart名词解释SeriesAxisScalesLineBarPieTeeChart配置说明ChartSeries(序列) : 在一个图表中可以有一个或多个序列,每个序列可以有不同的显示类型,如Line、Bar、Pie等等。Add 添加新的序列Fast Line(TFastLineSeries简单曲线图)、Line(TLineSeries 3D曲线图)、Bar(TBarSeries竖条状图)、Horiz. Bar(THorizBarSeries横条状图)Area(TAreaSeries 区域图)、Point(TPointSeries 点状图)、Pie(TPieSeries 饼状图)、Shape(TChartShape 实体图)、Gantt(TGanttSeries 甘特图)、Arrow(TArrowSeries 箭头图)、Bubble(TBubbleSeries 泡泡图)SeriesFormat:修改序列的格式SeriesPoint:修改序列中点的样子SeriesGeneral:对序列的配置,包括Axis,Legend,Formats,Cursor。SeriesMarks:是否显示序列中每个点的值。SeriesData Source:数据源。可以采用No Data,Random Values,Function。Title 修改序列的名称。Change 修改序列的类型,可以从Line改变成Bar或者Pie。ChartGeneral:一些基本的参数设置。Print Priview:打印及打印预览Export:输出Margins:页边空白Allow Zoom:允许缩放Animated Zoom:缩放过程是否是动态的,还是一次成功。(如果图的点太多时,可以打开这个功能)Allow Scroll:滚动条ChartAxis : 控制图表坐标轴(上、下、左、右、深)的属性Show Axis:是否显示坐标轴ChartAxisScales:调整坐标轴的比例Automatic:可以自动处理最大与最小值,也可以手工设置。Change:可以自动处理增量,也可以手工设置。Logarithmic:对数的Inverted:反向的ChartAxisTitle:设置坐标轴的标题Title:标题Angle:标题的角度Size:标题的宽度Font:标题的字体ChartAxisLabels:设置坐标轴的标签Titles :ChartLegend(图例):图表中的一个长方形的用来显示图例标注的区域。可以标注Series的名称或者Series中的项目和数值。VisibleBack ColorFontFramePositionMarginLegend StyleText StyleResize ChartInverted%Top Pos%Color WidthDividing LinesShadowChartPanel (面板):Panel可以设置图表的背景。可以使用渐变的颜色或者图像文件作为整个图表的背景Bevel Inner (Bevel Innner ) WidthBevel Outer (Bevel Outer) WidthBack Image:图表的背景图Style:(Stretch伸展, Tile瓦片, Center居中)Inside:只显示在背后壁上Panel Color:Panel的Inner的颜色Border:给控件加边界Gradient(梯度):梯度显示颜色Visible、Start Color、End Color、Direction(方向):上下、左右、从中间ChartPaging :图表有几页组成Points Per Page(每页显示几个点):0为所有的点显示在一页,其他按数字处理。Scale Last Page:最后一页按比例显示,使之充满整个图表。ChartWalls(壁)Left Walls:Y轴的平面Bottom Walls:X轴的平面Back Walls:背后的平面Pattern(模式):=(Solid实心,None无,Horizontal竖条纹,Vertical横条纹,Diagonal对角线,Back.Diagonal反向对角线,Cross十字线,DiagonalCross对角十字线);Border(边线):=(Solid实线, Dash划线, Dot点,Dash Dot线点, Dash Dot Dot线点点, Small Dots小点)Transparent (透明)Chart3D3Dimensions(维):是否3维显示Orthogonal(直角的):3维显示为直角显示,则Elevation,Rotaion,Perspective被屏蔽ZoomText:坐标数字与图形一起缩放Zoom:图形的缩放Rotaion(旋转):关闭Orthogonal后,可以在Y轴上旋转Elevation(正视图) :关闭Orthogonal后,可以在X轴上旋Horiz. Offset:在X轴移动图形Vert. Offset:在Y轴移动图形Perspective(透视) :关闭Orthogonal后,将焦点沿Z轴移动。TeeChart使用实例/ AddPagesNewTabSheet := TTabSheet.Create(pgMain); with NewTabSheet do begin Parent := pgMain; PageControl := pgMain; Tag := Ord(CountTypeIndex); Caption := arrCountTypeCountTypeIndex; end;/ AddCharts NewChart := TChart.Create(NewTabSheet); with NewChart do begin Parent := NewTabSheet; Title.Text.Add(网间结算 + arrCountTypeCountTypeIndex + /天分布图); LeftAxis.Title.Caption := arrCountTypeCountTypeIndex; BottomAxis.Title.Caption := 话单日期; Legend.Visible := sbLegend.Down; Legend.Alignment := laBottom; Legend.LegendStyle := lsSeries; View3D := sb3D.Down; Width := NewTabSheet.Width; Height := NewTabSheet.Height; end;/ ClearSeries AChart.SeriesSeriesIndex.Free;/ AddSeries NewSeries := TLineSeries.Create(AChart); NewSeries.Title := ANameList.StringsSeriesIndex; NewSeries.Marks.Visible :=True; AChart.AddSeries(NewSeries);/ AddNameForSeriesAChart.SeriesListSeriesIndex.Title:= NewName;/ ShowSeriesAChart.SeriesSeriesIndex.Active := True;/ EmptySeriesAChart.SeriesSeriesIndex.Clear;/ FillSeriesAChart.SeriesSeriesIndex.AddXY();VC中使用TeeChart控件 2008-10-19 18:53在头文件中要加上#include tchart.h#include series.h#include valuelist.h#include axes.h#include axis.h#include pen.h#include axislabels.h#include teefont.h#include axistitle.h#include aspect.h#include fastlineseries.h#include titles.h#include fastlineseries.h#include panel.h#include legend.h#include tools.h#include toollist.h#include annotationtool.h#include page.h TeeChart类的属性和方法 TeeChart的主类是TChart。TChart中使用了众多的属性方法和事件,随着版本的升级将越来越丰富。这使得TChart具有非常强大的功能。本文仅简单地介绍其中一些重要类的属性和方法。 TChart.Height:图表的高度(像素); TChart.Width:图表的宽度(像素); TChart.Header:图表的题头(Ititles类); TChart.Series:序列(Series类的数组); TChart.Axes:坐标轴(Iaxes类); TChart.Legend:图例(Legend类); TChart.Panel:面板(Ipanel类); TChart.Canvas:画布(Canvas类)。 Series是要显示的数据的主体。在一个图表中可以有一个或多个序列,每个序列可以有不同的显示类型,如Line、Bar、Pie等等。 Axes控制图表坐标轴的属性,在缺省的情况下,坐标轴可以自动地根据不同的数据设置好标度范围和间隔,当然也可以手工调整。 Legend控制图表的图例显示。Legend是图表中的一个长方形的用来显示图例标注的区域。可以标注Series的名称或者Series中的项目和数值。 Panel可以设置图表的背景。可以使用渐变的颜色或者图像文件作为整个图表的背景 Canvas可以让设计者绘制自己的图形。使用方法和Delphi中的Canvas一样。有TextOut、 LineTo、Arc等各种画图的方法可以调用。 TChart的一些属性实际上是其他类的变量,这些类又具有自己的属性和方法。如Ititles类又具有Text、Color、Font等属性,我们可以用这些属性来设置题头的文本、颜色和字体。 TeeChart和其他的图表控件相比,有一个非常重要的特点是TeeChart可以把图表保存为一个JPEG格式的图形文件。调用格式如下: TChart.Export.SaveToJPEGFile (FileName,Gray,Performance,Quality,Width,Height) 其中FileName是JPEG文件的保存路径和文件名,路径应该是操作系统中的绝对路径,而不是IIS中的相对路径,IIS对相应的保存目录应该具有写权限。Gray指明是否保存为黑白图像。Performance指明JPEG是生成质量优先还是速度优先。Quality是一个0到100的整数,100时JPEG质量最好,但文件最大;Quality越小则生成的文件越小,但图像质量也随之下降。 设定信息如下(该CHART控件名称为:m_Chart) /清空chart - m_Chart.ClearChart(); m_Chart.RemoveAllSeries();/CHART框架 m_Chart.GetFrame().SetVisible(true); m_Chart.GetFrame().SetColor(RGB(255,255,255);/*根据自定义背景色来设置,我这里设定背景色为白色,所以也设定为边框为白色,这样就看不到的,如果不加入,该颜色就默认为黑色的/重要,否则出现边框为默认黑色的.如果要改变背景颜色,那么对应的此处颜色要进行更改的*/ m_Chart.GetPanel().SetColor(RGB(255,255,255); m_Chart.GetLegend().SetVisible(false);/ 添加3条曲线 -m_Chart.AddSeries(0);m_Chart.AddSeries(0);m_Chart.AddSeries(0);/ 设置3条曲线的坐标轴 -m_Chart.Series(0).SetVerticalAxis(0);m_Chart.Series(1).SetVerticalAxis(0);m_Chart.Series(2).SetVerticalAxis(0);m_Chart.Series(0).SetHorizontalAxis(1);m_Chart.Series(1).SetHorizontalAxis(1);m_Chart.Series(2).SetHorizontalAxis(1);m_Chart.Series(0).GetXValues().SetDateTime(true);m_Chart.Series(1).GetXValues().SetDateTime(true);m_Chart.Series(2).GetXValues().SetDateTime(true);/ 设置3条曲线的颜色 -m_Chart.Series(0).SetColor(RGB(255,0,0);m_Chart.Series(1).SetColor(RGB(0,255,0);m_Chart.Series(2).SetColor(RGB(0,0,255);/ 设置3条曲线的名称m_Chart.Series(0).SetName(ZongFengGuan);m_Chart.Series(1).SetName(LieCheGuan);m_Chart.Series(2).SetName(ZhiDongGang);/-设定最大最小值m_Chart.GetAxis().GetBottom().SetMinMax(minStar,minEnd);/ minStar,minEnd要求自己去添加,这里用的是时间的范围/一般为起始时间和结束时间的范围的/ 连接数据库 -CXDatabasedb;_RecordsetPtrpRs;CStringstrSql;if(!db.Connect(ACCESS,GetRootDir()+db1.mdb,)AfxMessageBox(连接数据库失败!);return;strSql.Format(select * from %s where RunTime=#%s# and RunTimeadoEOF)/ 添加数据点 -double dTime = oletime2chttime(COleDateTime(pRs-GetCollect(RunTime);double dZFGPress = var2dbl(pRs-GetCollect(ZFGPress);double dLCGPress = var2dbl(pRs-GetCollect(LCGPress);double dZDGPress = var2dbl(pRs-GetCollect(ZDGPress);m_Chart.Series(0).AddXY(dTime,dZFGPress,NULL,RGB(255,0,0);m_Chart.Series(1).AddXY(dTime,dLCGPress,NULL,RGB(0,255,0);m_Chart.Series(2).AddXY(dTime,dZDGPress,NULL,RGB(0,0,255);pRs-MoveNext();/ 断开数据库连接 -db.Disconnect();后记:当图与表格同时显示时,加入一个TeeChartGrid控件并关联一个变量,下面语句使Grid与Teechart关联起来:m_ctrlChartGrid.SetChartLink(m_ctrlChart.GetChartLink();【转】TeeChart的用法 / / 获得数据集 / / 传递查询语句 / 返回数据集 public static DataSet GetDataSet(string sqlStr) string connstring = System.Configuration .ConfigurationSettings.AppSettingsconStr; /string sqlStr = select * from chart; SqlDataAdapter da = new SqlDataAdapter(sqlStr, connstring); DataSet ds = new DataSet(); da.Fill(ds); return ds; / / 绘制统计图 / / Sql查询语句 private void DrawBar(string SelectStr) Chart chart = WebChart1.Chart; DataSet DS = new DataSet();/显示图片的格式,默认PNG WebChart1.PictureFormat = Steema.TeeChart.Export.PictureFormats.Bitmap; /设置保存数据形式,默认File,一般选session。Chart.Aspect(外观属性) WebChart1.TempChart = Steema.TeeChart.Web.TempChartStyle.Session; /获取显示图片文件 WebChart1.GetChartFile = GetChart.aspx; /整个图表的高度 WebChart1.Height = 300; /整个图表的宽度 WebChart1.Width = 600; /显示图片的格式,默认PNG WebChart1.PictureFormat = Steema.TeeChart.Export.PictureFormats.Bitmap; /设置保存数据形式,默认File,一般选session。Chart.Aspect(外观属性) WebChart1.TempChart = Steema.TeeChart.Web.TempChartStyle.Session; /图表底色开始颜色 /WebChart1.Chart.Panel.Gradient.StartColor = Color.Blue;/图表底色开始颜色 /设置图形标题 WebChart1.Chart.Header.Text = 个人每月开销数目柱形图; /设置X轴标题 WebChart1.Chart.Axes.Bottom.Title.Text = 月份(月); /设置Y1轴标题 WebChart1.Chart.Axes.Left.Title.Text = 金额(元); WebChart1.Chart.Axes.Left.Labels.ValueFormat = #M/N; /参纵坐标轴是否显示 WebChart1.Chart.Axes.Bottom.Grid.Visible = false ; /横坐标字体倾斜角度0360 WebChart1.Chart.Axes.Bottom.Labels.Angle= 30; /图表左边距 WebChart1.Chart.Panel.MarginLeft = 15; /图例间是否有间隔线 WebChart1.Chart.Legend.DividingLines.Visible = true; /图形显示比例(好像无反应) /WebChart1.Chart .Aspect .Zoom = 10; WebChart1.Dispose(); /是否立体显示 WebChart1.Chart.Aspect.View3D = false; foreach (Steema.TeeChart.Styles.Series s in chart.Series) if (styles = 1) /画柱状图 Steema.TeeChart.Styles.Bar sty1 = new Steema.TeeChart.Styles.Bar(WebChart1.Chart); Steema.TeeChart.Styles.Bar sty2 = new Steema.TeeChart.Styles.Bar(WebChart1.Chart); chart.Series.Add(sty1); chart.Series.Add(sty2); if (styles = 2) /画折线图 Steema.TeeChart.Styles.Line sty1 = new Steema.TeeChart.Styles.Line(WebChart1.Chart); Steema.TeeChart.Styles.Line sty2 = new Steema.TeeChart.Styles.Line(WebChart1.Chart); chart.Series.Add(sty1); chart.Series.Add(sty2); if (styles = 3) Steema.TeeChart.Styles.Kagi sty1 = new Steema.TeeChart.Styles.Kagi(WebChart1.Chart); /Steema.TeeChart.Styles.Kagi sty2 = new Steema.TeeChart.Styles.Kagi(WebChart1.Chart); chart.Series.Add(sty1); /chart.Series.Add(sty2); /添加第二个纵坐标 if (YaxixCount = 2) Axis axisY2 = new Axis(false, false, WebChart1.Chart); chart.Series1.CustomVertAxis = axisY2; /sty2.CustomVertAxis = axisY2; /bar2.CustomVertAxis = axisY2; WebChart1.Chart.Axes.Custom.Add(axisY2); axisY2.AxisPen.Color = Color.DarkGreen;/坐标轴颜色 axisY2.Title.Text = 数量; axisY2.Title.Font.Color = Color.Blue; /坐标轴标题颜色 axisY2.Title.Font.Bold = false; axisY2.Title.Angle = 90;/旋转90 axisY2.RelativePosition = -20; /图形颜色 /sty1.ColorEach = false; /sty2.ColorEach = false; /查询语句 /string SelectStr = select month,Allcount,fee from chart; DS.Clear(); try DS = GetDataSet(SelectStr); catch (Exception e) Response.Write(e); if (SeriesCount = 1) chart.Series0.DataSource = DS.Tables0; chart.S
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030农用微生物菌剂冷链储运网络建设必要性分析
- 江苏省宿迁市泗阳县2025-2026学年七年级上学期第一次检测语文试卷(含答案)
- 自筹资金财务承诺函范本模板
- 教师阅读计划制定与执行方案
- 财务岗位职责及操作规程手册
- 零售药店营业员培训教材及测试题
- 汽车销售人员培训手册与指导
- 家装售后服务合同标准范本
- 聚苯乙烯材料安全操作规程说明书
- 小学语文学科教学反思与改进建议
- 蒋婷婷-《书包里的故事》
- 肌少症性肥胖
- 送电线路工程成品保护方案
- GB/T 17410-2023有机热载体炉
- 国家开放大学理工英语1边学边练
- 人工智能导论PPT完整全套教学课件
- 如何提高住院患者癌痛规范化治疗率PDCA
- 卡氏肺孢子虫肺炎
- 陕中医大西医外科学教案05水、电解质代谢和酸碱平衡的失调
- TDSHXH 002-2022 工业干冰规程
- 肺癌患者随访服务记录表
评论
0/150
提交评论