【TeeChart Pro ActiveX教程】(一):入門—構(gòu)建圖表并填充數(shù)據(jù)系列(下)
【下載TeeChart Pro ActiveX最新版本】
(一)填充新數(shù)據(jù)系列
在圖表編輯器中選擇“Series”選項(xiàng)卡以顯示“Series”配置屬性。“Series”頁面上的第五個(gè)選項(xiàng)卡是數(shù)據(jù)源選項(xiàng)卡。
1.1 ADO
如果您的數(shù)據(jù)源是OLE DB或ODBC兼容,那么您可以直接在圖表編輯器中映射數(shù)據(jù)。
從“Data Source”頁面的下拉列表框中 選擇“Dataset”,然后選擇“New...”按鈕以定義連接源。
使用默認(rèn)的Microsoft OLE DB Provider for ODBC Drivers Provider 構(gòu)建新的連接字符串使您可以從任何具有有效用戶DSN的ODBC數(shù)據(jù)源中進(jìn)行選擇,包括TeeChart Pro數(shù)據(jù)庫。
您可以從可用的表列表中選擇一個(gè)表,也可以為數(shù)據(jù)源編寫自己的SQL查詢。SQL查詢可以保存為TXT文件并以此形式引入。
選擇確定將創(chuàng)建整個(gè)連接操作的記錄,在本例中稱為DataSet1,并返回到先前的數(shù)據(jù)源屏幕,您可以在其中選擇要添加到系列的列。要填充我們的新Bar系列,我們只需要標(biāo)簽和條形值,其中標(biāo)簽將在水平(默認(rèn)情況下為底部)軸上讀取,其中Bar是條形圖垂直高度的值。完成這些字段后,您可以選擇“ 關(guān)閉”或“ 應(yīng)用”,您應(yīng)該會(huì)看到已使用數(shù)據(jù)源中的數(shù)據(jù)填充圖表。
1.2 編碼數(shù)據(jù)輸入
對(duì)于編程的數(shù)據(jù)輸入,您需要編寫一些代碼。本節(jié)將向您展示使用編碼輸入構(gòu)建圖表所需的步驟。
您之前使用圖表編輯器添加的系列在設(shè)計(jì)時(shí)顯示隨機(jī)數(shù)據(jù)。但是,在運(yùn)行時(shí),除非您手動(dòng)填充數(shù)據(jù),否則系列將沒有數(shù)據(jù)。從工具箱中選擇一個(gè)命令按鈕并將其放在您的表單上。在Visual Basic中雙擊按鈕以訪問代碼編輯器(該方法可能在不同的編程環(huán)境中有所不同)。在代碼編輯器中鍵入以下行:
With TChart1.Series(0) .Add 3, "Pears", vbRed .Add 4, "Apples", vbBlue .Add 2, "Oranges", vbGreen End With
運(yùn)行項(xiàng)目并按下命令按鈕。您的圖表上將顯示三個(gè)新欄。 圖表中的第一個(gè)系列具有(0)索引,第二個(gè)(1)等。因此,在圖表中有多個(gè)系列,您可以使用索引選擇要修改的系列。 Series'Add方法接受3個(gè)變量,Value,Label和Color。因此,Add方法假設(shè)Label軸上的值間隔相等(在本例中為X軸)。如果您的數(shù)據(jù)包含2個(gè)變量,則可以使用AddXY方法。向項(xiàng)目添加另一個(gè)Command按鈕并將此代碼放入其中。運(yùn)行項(xiàng)目并使用以下代碼添加點(diǎn):
With TChart1.Series(0) If .Count > 0 Then 'Increment X Axis value and add a new random point .AddXY .XValues.Last+(Rnd(100)), (.YValues.Last/.YValues.Last-1)+(Rnd(100)), "", vbBlue Else 'Add a new random point .AddXY 1, (Rnd(100)), "", vbBlue End If End With
(二)選擇系列類型以滿足您的需求
最后一個(gè)編碼示例生成了新的X和Y值。點(diǎn)之間的X軸距離不是恒定的,這將導(dǎo)致在某些情況下條的重疊,這對(duì)于一些但不是所有應(yīng)用是期望的。使用圖表編輯器更改系列類型(在設(shè)計(jì)時(shí)輸入圖表編輯器并使用第一頁上的“ 更改”按鈕)到LineSeries,顯示另一種以2個(gè)變量以圖形方式表示數(shù)據(jù)的方法。如果您的數(shù)據(jù)包含2個(gè)以上的變量,則還有其他適合顯示數(shù)據(jù)的系列類型。下表顯示了TeeChart系列類型的組成。
系列類型 |
變量數(shù)量 | 數(shù)據(jù)源屬性 |
Standard |
||
Gantt |
3 |
StartValues, EndValues, AY (Y axis level), AXLabel (Label optionally shown on Y-axis or as mark) |
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 |
HorizLine |
2 |
XValues, YValues, YLabel |
HorizArea |
2 |
XValues, YValues, YLabel |
Shape |
4 |
X0 (Top), Y0 (Bottom), X1 (Left), Y1 (Right) |
Bubble |
3 |
XValues, YValues, XLabel, RadiusValues |
3D |
||
Surface |
3 |
XValues, YValues, XLabel, ZValues |
Contour |
3 |
XValues, YValues, XLabel, ZValues |
Waterfall |
3 |
XValues, YValues, XLabel, ZValues |
Color Grid |
3 |
XValues, YValues, XLabel, ZValues |
Vector 3D |
3 |
XValues, YValues, XLabel, ZValues |
Tower |
3 |
XValues, YValues, XLabel, ZValues |
Iso-Surface |
3 |
XValues, YValues, XLabel, ZValues |
Point3D |
3 |
XValues, YValues, XLabel, ZValues |
Bubble |
5 |
XValues, YValues, XLabel, RadiusValues, ZValues |
Triangle Surf. |
3 |
XValues, YValues, XLabel, ZValues |
Polar Grid |
3 |
XValues, YValues, XLabel, (Polar Grid has Sectors, Tracks and Values) |
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) |
Polar Bar |
3 |
XValues, YValues, Labels (Polar has Angle and Radius) |
Bezier |
2 |
XValues, YValues, XLabel |
Donut |
2 |
Angle, YValues, Labels |
Smith |
2 |
Resistance, Reactance, Labels |
Pyramid |
2 |
XValues, YValues, XLabels |
Map |
3 |
XValues, YValues, Polygons, Labels |
Org Chart |
2 |
XValues, YValues, Labels |
Tree Map |
2 |
XValues, YValues, Labels |
Financial |
||
Point & Figure |
5 |
OpenValues, CloseValues, HighValues, LowValues, DateValues |
Candle |
5 |
OpenValues, CloseValues, HighValues, LowValues, DateValues |
Volume |
2 |
XValues, YValues (VolumeValues), XLabel |
Darvas |
5 |
OpenValues, CloseValues, HighValues, LowValues, DateValues |
Renko |
2 |
XValues, YValues, Labels |
Kagi |
2 |
XValues, YValues, Labels |
Stats |
||
Histogram |
2 |
XValues, YValues, XLabel |
Horizontal Histogram |
2 |
XValues, YValues, XLabel |
Error Bar |
3 |
XValues, YValues, XLabel, ErrorValues |
Error |
3 |
XValues, YValues, XLabel, StdErrorValues |
High-Low |
3 |
XValues, YValues, LowValues, XLabel |
BoxPlot |
2 |
XValues, SamplesValues, Label |
Horizontal BoxPlot |
2 |
XValues, SamplesValues, Label |
Volume Pipe |
3 |
XValues, YValues, Labels |
Funnel |
3 |
XValues, QuoteValues, OpportunityValues, XLabel |
HighLow Line |
3 |
XValues, HighValues, LowValues, Labels |
Ternary |
5 |
XValues, YValues, ZValues, RadiusValues, WeightingValues, Labels |
Error Point |
6 |
XValues, YValues, LeftError, RightError, TopError, BottomError, Labels |
Error Point 3D |
9 |
XValues, YValues, ZValues, LeftError, RightError, TopError, BottomError, FrontError, BackError, Labels |
Other |
||
Line Point |
2 |
XValues, YValues, XLabel |
Bar Join |
2 |
XValues, YValues, XLabel |
Bar 3D |
3 |
XValues, YValues, YStartPoint, XLabel |
Big Candle |
5 |
OpenValues, CloseValues, HighValues, LowValues, DateValues |
Image Bar |
2 |
XValues, YValues, XLabel |
ImagePoint |
2 |
XValues, YValues, XLabel |
DeltaPoint |
2 |
XValues, YValues, XLabel |
Wind Rose |
2 |
Angle, YValues, Labels |
Clock |
2 |
Angle, YValues, Labels |
Rose |
3 |
Angle, YValues, Angle Values, Labels |
Calender |
2 |
XValues, YValues, Labels |
Tag Cloud |
2 |
YValues, ZValues, Labels |
Gauges |
||
Gauge |
1 |
YValue |
Numerical Gauge |
1 |
YValue |
Linear Gauge |
1 |
YValue |
Vertical |
1 |
YValue |
Circular gauge |
1 |
YValue |
Knob Gauge |
1 |
YValue |
購(gòu)買TeeChart Pro AciveX正版授權(quán),請(qǐng)點(diǎn)擊“咨詢?cè)诰€客服”喲!