TeeChart Pro VCL/FMX教程(六):使用系列(一)

下載TeeChart Pro VCL/FMX最新版本

系列類型

    該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 runtime
procedure 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 TypeAdd Series pointsDelete Series points



Standard Series types

LineSeries.Add
Series.AddXY
Series.AddNull
Series.AddNullXY
Series.Delete
Series.Clear
Horiz LineSeries.Add
Series.AddXY
Series.AddNull
Series.AddNullXY
Series.Delete
Series.Clear
Fast LineSeries.Add
Series.AddXY
Series.AddNull
Series.AddNullXY
Series.Delete
Series.Clear
BarSeries.Add
Series.AddXY
Series.AddNull
Series.AddNullXY
Series.Delete
Series.Clear
HorizBarSeries.Add
Series.AddXY
Series.AddNull
Series.AddNullXY
Series.Delete
Series.Clear
AreaSeries.Add
Series.AddXY
Series.AddNull
Series.AddNullXY
Series.Delete
Series.Clear
PointSeries.Add
Series.AddXY
Series.AddNull
Series.AddNullXY
Series.Delete
Series.Clear
PieSeries.Add
Series.AddNull
Series.Delete
Series.Clear
ArrowArrowSeries.AddArrow
Series.AddNull
Series.AddNullXY
Series.Delete
Series.Clear
BubbleBubbleSeries.AddBubble
Series.AddNull
Series.AddNullXY
Series.Delete
Series.Clear
GanttGanttSeries.AddGantt
GanttSeries.AddGanttColor
Series.Delete
Series.Clear
ShapeShapeSeries.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');

    未完待續...


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章