該TChartSeries組件是全部系列類型的共同父類編輯器
做爲TeeChart組件庫結構的一小部分背景,下面是系列組件及其結構的說明。下圖顯示了TeeChart系列類之間的關係。全部類都派生自通用的「TChartSeries」類,所以共享「Series」屬性和方法。其餘幾個通用類派生自Series(CustomSeries,CustomBarSeries和CircledSeries),它們以綠色突出顯示,而且它們的組件不能直接用於編程,它們的特性由其後代Series類型繼承。全部派生系列(紅色)都可在TeeChart圖庫中訪問,以包含在您的圖表中。以這種方式派生的TeeChart系列容許經過公共索引結構(集合)進行可編程訪問。函數
TeeChart Pro的內部Series Class層次結構spa
在設計時使用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屬性和方法。orm
爲圖表選擇系列類型很大程度上取決於您對圖表的要求。可是,有時候Chart的選擇取決於哪一種Series類型支持輸入變量的數量,由於要繪製的變量數量不少。下表顯示了某些不一樣Series類型容許的變量數。爲簡潔起見,咱們未提供TeeChart提供的全部可能的系列類型。blog
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 |
||
1 | Value |
標籤可用於擴展2變量Series Type的值。請參閱下面的示例,該示例在同一圖表中使用3個Bar Series類型的實例。
使用Bar系列類型
在最簡單的形式中,數據生成如下圖表,按月對信息進行分組:
或(按產品分組):
咱們在上表(Stock)中添加了新值。
庫存的價值一般高於月產量,所以顯示它們會給出下面的圖表(此次是2D)。圖表使用線系列來區分股票。
大多數系列類型(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清除系列中的全部點。
有關支持AddNull方法的系列類型列表,請參閱向系列添加數據表。顧名思義,AddNull將爲系列添加一個Null點,容許您爲該點定義一個標籤,但在該點處系列中斷。在線系列的狀況下,休息前的最後一個點不會在休息後加入到第一個點。見Series.AddNull。
Series1.Delete(7); //(8th point - Points index start at zero)
Series.Clear清除系列中的全部點。
有關支持AddNull方法的系列類型列表,請參閱向系列添加數據表。顧名思義,AddNull將爲系列添加一個Null點,容許您爲該點定義一個標籤,但在該點處系列中斷。在線系列的狀況下,休息前的最後一個點不會在休息後加入到第一個點。見Series.AddNull。
Series1.AddNull('my null value');
未完待續...