博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
TeeChart Pro VCL/FMX教程(六):使用系列(一)
阅读量:7071 次
发布时间:2019-06-28

本文共 5063 字,大约阅读时间需要 16 分钟。

hot3.png

系列类型

    该TChartSeries组件是所有系列类型的共同父类

系列类结构

    作为TeeChart组件库结构的一小部分背景,下面是系列组件及其结构的说明。下图显示了TeeChart系列类之间的关系。所有类都派生自通用的“TChartSeries”类,因此共享“Series”属性和方法。其他几个通用类派生自Series(CustomSeries,CustomBarSeries和CircledSeries),它们以绿色突出显示,并且它们的组件不能直接用于编程,它们的特性由其后代Series类型继承。所有派生系列(红色)均可在TeeChart图库中访问,以包含在您的图表中。以这种方式派生的TeeChart系列允许通过公共索引结构(集合)进行可编程访问。

Teechart

TeeChart Pro的内部Series Class层次结构

    在设计时使用TChart编辑器更容易添加Series,但您也可以在运行时创建新的和不同的Series类型并将其添加到同一个Chart中。

//You could add the Series at runtimeprocedure TForm1.Button2Click(Sender: TObject);var tmpAreaSeries:TAreaSeries;begin  tmpAreaSeries:=TAreaSeries.Create(self);  With tmpAreaSeries do  begin    ParentChart:=Chart1;    FillSampleValues(10);  end;end;

对于在设计时创建的任何系列,新系列都可以使用所有AreaSeries属性和方法。

选择系列类型

    为图表选择系列类型很大程度上取决于您对图表的要求。但是,有时候Chart的选择取决于哪种Series类型支持输入变量的数量,因为要绘制的变量数量很多。下表显示了某些不同Series类型允许的变量数。为简洁起见,我们未提供TeeChart提供的所有可能的系列类型。

Series Type

No. of variables

Datasource Properties

Standard

   

Line

2

XValues, YValues, XLabel

Bar

2

XValues, YValues (called Bar), XLabel

HorizBar

2

XValues, YValues (called Bar), XLabel

Area

2

XValues, YValues, XLabel

Point

2

Xvalues, YValues, XLabel

Pie

1

PieValues, XLabel

Fast Line

2

XValues, YValues, XLabel

Horiz. Line

2

XValues, YValues, YLabel

Horiz. Area

2

XValues, YValues, XLabel

Shape

4

X0 (Top), Y0 (Bottom), X1 (Left), Y1 (Right)

Bubble

3

Xvalues, YValues, XLabel, RadiusValues

Gantt

3

StartValues, EndValues, AY (Y axis level), AXLabel (Label optionally shown on Y-axis or as mark)

Extended

   

Arrow

4

StartXValues, StartYValues, XLabel, EndXValues, EndYValues

Polar

2

XValues, YValues, Labels (Polar has Angle and Radius)

Radar

2

XValues, YValues, Labels (Radar has Angle and Radius)

Bezier

2

XValues, YValues, XLabel

Donut

2

Angle, YValue, Labels

Smith

2

Resistance, Reactance, Labels

Pyramid

3

XValues, YValues, XLabel, ErrorValues

Financial

   

Candle

5

OpenValues, CloseValues, HighValues, LowValues, DateValues

Point & Figure

5

OpenValues, CloseValues, HighValues, LowValues, DateValues

Volume

2

XValues, YValues (VolumeValues), XLabel

Stats

   

Histogram

2

Xvalues, YValues, XLabel

Error Bar

3

XValues, YValues, XLabel, StdErrorValues

Error

3

XValues, YValues, XLabel, StdErrorValues

High-Low

3

XValues, YValues, XLabel, LowValues

Box Plot

3

XValues, SamplesValues, Label

Horizontal Box Plot

3

XValues, SamplesValues, Label

Funnel

3

XValues, QuoteValues, OpportunityValues, XLabel

3D

   

Surface

3

Xvalues, YValues, ZValues

Contour

3

XValues, YValues, ZValues, XLabel

Waterfall

3

Xvalues, YValues, ZValues

ColorGrid

3

XValues, YValues, ZValues

Tower

3

XValues, YValues, XLabel, ZValues

Point3D

3

XValues, YValues, XLabel, ZValues

Triangle Surf.

3

Xvalues, YValues, ZValues

Other

   

Clock

2

Angle, YValues, Labels

Line Point

2

XValues, YValues, XLabel

Bar Join

2

Xvalues, YValues, XLabel

Bar3D

3

XValues, YValues, YStartPoint, XLabel

WindRose

2

Angle, YValues, Labels

Calendar

2

XValues, YValues, Labels

Gauges

   

Gauge

1

Value

    标签可用于扩展2变量Series Type的值。请参阅下面的示例,该示例在同一图表中使用3个Bar Series类型的实例。

    使用Bar系列类型

Teechart

    在最简单的形式中,数据生成以下图表,按月对信息进行分组:

Teechart

    或(按产品分组):

Teechart

    我们在上表(Stock)中添加了新值。

Teechart

    库存的价值通常高于月产量,因此显示它们会给出下面的图表(这次是2D)。图表使用线系列来区分股票。

Teechart

将数据添加到系列

    大多数系列类型(ODBC数据源教程8和函数教程7除外)使用Add和ADDXY方法添加数据。有一些例外,请参阅下表,了解它们如何区别的示例:

Series Type Add Series points Delete Series points
     
Standard Series types    
Line Series.Add
Series.AddXY
Series.AddNull
Series.AddNullXY
Series.Delete
Series.Clear
Horiz Line Series.Add
Series.AddXY
Series.AddNull
Series.AddNullXY
Series.Delete
Series.Clear
Fast Line Series.Add
Series.AddXY
Series.AddNull
Series.AddNullXY
Series.Delete
Series.Clear
Bar Series.Add
Series.AddXY
Series.AddNull
Series.AddNullXY
Series.Delete
Series.Clear
HorizBar Series.Add
Series.AddXY
Series.AddNull
Series.AddNullXY
Series.Delete
Series.Clear
Area Series.Add
Series.AddXY
Series.AddNull
Series.AddNullXY
Series.Delete
Series.Clear
Point Series.Add
Series.AddXY
Series.AddNull
Series.AddNullXY
Series.Delete
Series.Clear
Pie Series.Add
Series.AddNull
Series.Delete
Series.Clear
Arrow ArrowSeries.AddArrow
Series.AddNull
Series.AddNullXY
Series.Delete
Series.Clear
Bubble BubbleSeries.AddBubble
Series.AddNull
Series.AddNullXY
Series.Delete
Series.Clear
Gantt GanttSeries.AddGantt
GanttSeries.AddGanttColor
Series.Delete
Series.Clear
Shape ShapeSeries.X0,
ShapeSeries.Y0,
ShapeSeries.X1,
ShapeSeries.Y1
TChart.RemoveSeries (TCustomAxisPanel)
(Each Shape is a unique Series)

颜色

    添加点时,可以手动为点添加颜色

Series1.Add(46, 'My first value', clYellow);

    或者使用TeeChart常量clTeeColor,告诉TeeChart分配颜色。TeeChart将为每个新系列选择最多16种独特且尚未使用的颜色中的一种。

Series1.Add(46, 'My first value', clTeeColor);

从系列中删除数据点

    使用Series.Delete从Series中删除一个点。

Series1.Add(46, 'My first value', clTeeColor);

    Series.Clear清除系列中的所有点。

将Null点添加到系列

    有关支持AddNull方法的系列类型列表,请参阅向系列添加数据表。顾名思义,AddNull将为系列添加一个Null点,允许您为该点定义一个标签,但在该点处系列中断。在线系列的情况下,休息前的最后一个点不会在休息后加入到第一个点。见Series.AddNull。

Series1.Delete(7); //(8th point - Points index start at zero)

    Series.Clear清除系列中的所有点。

将Null点添加到系列

    有关支持AddNull方法的系列类型列表,请参阅向系列添加数据表。顾名思义,AddNull将为系列添加一个Null点,允许您为该点定义一个标签,但在该点处系列中断。在线系列的情况下,休息前的最后一个点不会在休息后加入到第一个点。见Series.AddNull。

Series1.AddNull('my null value');

    未完待续...

转载于:https://my.oschina.net/u/3905944/blog/3053106

你可能感兴趣的文章
基于TP的SenCMS目录结构
查看>>
jquery 验证提交
查看>>
Yaf框架的扩展-mvc-路由配置-模版视图smarty加载
查看>>
单行文本溢出and多行文本溢出...以省略号展现
查看>>
MYSQL语句
查看>>
Android WebView 详解(持续更新)
查看>>
ElasticSearch动态添加节点及相关配置项
查看>>
Android studio 使用心得(十)---android studio 多渠道打包(三)
查看>>
数据库选型的一些看法
查看>>
PHP接口&抽象类验证笔记
查看>>
Spark Streaming源码解读之No Receivers
查看>>
使用背景图的div宽高自适应
查看>>
sql注入工具
查看>>
MongoDB 开启用户认证登录
查看>>
ADO.NET操作数据库(一)
查看>>
指针与引用的本质区别
查看>>
Auto Layout 使用心得(五)—— 根据文字、图片自动计算 UITableViewCell
查看>>
M3U8在线视频文件下载合成MP4视频(自己想看电影)
查看>>
HTML5的布局的使用
查看>>
hdu 1068 二分图的最大匹配匈牙利算法
查看>>