翻譯|使用教程|編輯:王香|2018-11-23 09:59:06.000|閱讀 291 次
概述:使用圖表編輯器,在添加函數后,函數系列的“數據源”頁面將顯示包含在函數定義中的可用系列列表。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
在上一篇文章中,我們介紹到了在Teechart Pro ActiveX中的功能特點和添加功能,今天我們接著講定義數據源、功能期間和周期樣式
上一節中的示例重點介紹如何使用Datasource通過代碼填充Function.Series使用datasource定義Function的輸入或定義Series ODBC數據源(請參閱有關訪問數據庫的教程)。
使用圖表編輯器,在添加函數后,函數系列的“數據源”頁面將顯示包含在函數定義中的可用系列列表。在這里,您可以更改要應用于系列的函數類型,并從左側列表框“Available”中選擇系列,并將它們添加到右側列表框“Selected”。
按代碼的數據源使用Series.Datasource屬性。
例:假設我們在圖表中有2個數據系列。我們添加了一個由2系列的平均值組成的函數:
With TChart1 .AddSeries scLine 'Define the Function Type for the new Series .Series(2).SetFunction tfAverage .Series(2).DataSource = "Series0,Series1" End With
我們為2系列添加點數:
Dim t As Integer With TChart1 For t = 0 To 10 .Series(0).Add 2 * t, "", clTeeColor .Series(1).Add 3 * t, "", clTeeColor Next t End With
請注意,該功能不會顯示。您需要使用Series.CheckDatasource方法讀取Function的值。
TChart1.Series(2).CheckDataSource 'Read in data for Function
可以使用Setfunction方法在運行時更改函數定義,以便為Series分配新函數。
TChart1.Series(2).Setfunction tfMovavg
使用上面的代碼行,Setfunction將Series(2)的Function更改為Moving Moving。
Period是使用函數的重要屬性,因為Period定義了循環應用Function的點的范圍。
例:我們有6個數據點(例如Bar系列的條形圖),其值為: 3,8,6,2,9和12
我們定義一個具有周期0的函數系列(默認),繪制的平均值為: 6.667
將Period設置為2,我們得到3個平均值作為函數的輸出: 5.5,4和10.5
這些值將在其周期范圍中集中繪制,即輸入系列的第1和第2列之間的第1個值,第3個和第4個條之間的第2個值等。 您可以通過在“Datasource”頁面中選擇相關的“Series和Function”并單擊“Options”選項卡來定義“Period”,也可以使用“FunctionType”在運行時修改“Period”。 例如,系列2是功能系列:
期間可以定義為范圍。這在使用Date-Time系列時非常有用,并且想要在“OneMonth”或“OneDay”等日期時間步驟中表達函數的“Period”。屬性“PeriodStyle”控制如何表達“Period”。 例如,您現在可以使用日期時間源系列上的常規“Average”功能繪制“monthly average of sales\月平均銷售額”功能,并將功能期間設置為“one month”:
'Add a Series and fill it with datetime data values at runtime (or from a database) TChart1.Series(1).SetFunction tfAverage TChart1.Series(1).FunctionType.PeriodStyle =psRange TChart1.Series(1).FunctionType.Period = TChart1.GetDateTimeStep dtOneMonth TChart1.Series(1).DataSource = "Series0"
這將產生幾個點,每個點顯示Series0中每個月數據的“Average”。 在計算日期時間段的函數時,必須按源日期對源Series0中的點進行排序。 該范圍也可用于非日期時間序列:
TChart1.Series(1).SetFunction tfAverage TChart1.Series(1).FunctionType.PeriodStyle =psRange TChart1.Series(1).FunctionType.Period=100 TChart1.Series(1).DataSource= "Series0"
這將計算每個“100”間隔內每組點的平均值。 ( X > = 0,X < 100的點將用于計算第一個平均值,X> = 100的點,X < 200將用于計算第二個平均值,依此類推......)。 請注意,這與計算每100個點的平均值不同。 使用“Period Alignment”屬性可以對齊“Series”范圍內的功能點。以下將繪制每月結束時的功能點:
TChart1.Series(1).FunctionType.PeriodStyle = psRange TChart1.Series(1).FunctionType.Period = TChart1.GetDateTimeStep dtOneMonth TChart1.Series(1).FunctionType.PeriodAlign =paLast
PeriodStyle = OneMonth and PeriodAlign = paLast
從下圖中可以看出,“average”是在月底繪制的。
PeriodStyle = OneMonth and PeriodAlign = paFirst
在這種情況下,“average”在月初繪制。
購買TeeChart Pro AciveX正版授權,請點擊“”喲!
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn