如何利用紫金橋軟件把關系庫中的數據繪制成曲線
在我們做一些工程項目的時候,常常需要把關系庫中的數據繪制成各種圖表,比如產量圖,生產率變化圖等等。我們都知道如果需要顯示報表,可以使用紫金橋提供的自由報表組件,但是如果需要顯示曲線我們怎么辦呢?
為了解決類似的問題,紫金橋公司提供了自由曲線組件,使用此組件可以非常方便的顯示關系庫中的曲線,同時也可以顯示使用腳本生成的任意的曲線。下面是自由曲線顯示的兩個示例:
下面我們來通過一個小的例子來認識一下紫金橋軟件的自由曲線的用法。
本例子是使用曲線組件來顯示在Acess關系庫中一個表中的數據,當然其他的關系庫比如SqlServer,甚至文本文件做為數據源處理的方法類似。
.mdb,已經復制到了工程目錄下面的SQL中(復制到工程目錄下的好處是即使更改了工程目錄的位置,甚至更改了工程目錄的名字,仍然無需更改工程本身就可以連接該Access庫),在這個Access數據庫中有一個數據表名Data,它的內容如下所示:
為了顯示該表中的曲線,我們首先創建一個窗口,然后在該窗口中創建自由曲線組件。
創建自由曲線的方法非常簡單,點擊,在子圖庫中選擇
,創建曲線組件即可。
雙擊自由曲線可以看到如下所示的設置框:
點擊更多設置,還會看到如下圖所示的更多設置框:
通過這些設置可以更改曲線的外觀、分隔數、線型、階梯連接方式、甚至還可以給曲線設置涂色,把曲線仿真成直方圖的形狀。具體的設置方法請參考紫金橋的自由曲線使用幫助。
給曲線設置完合適的屬性之后,為了能夠進行腳本的引用,我們并按照下面介紹的方法給曲線命名為C。
在組態模式下,使用鼠標選中曲線組件,在屏幕的左下腳可以看到屬性列表如下圖所示。
在名稱處輸入此曲線組件的名稱。
這樣我們就可以通過#C的方式調用自由曲線支持的方法,完成繪制曲線的過程。
為了能夠訪問Access庫中的數據,我們先使用報表來把Access中的數據讀取上來。首先我們需要創建報表關系數據源點,在點組態界面創建一個報表關系數據源點,如下圖所示
在聯結字符串處點擊右側按鈕選擇連接Access數據庫,并在彈出的對話框中選擇CurveData.mdb文件,就完成了連接Acess的工作。
下一步,我們需要把數據采集到報表中,首先我們創建一個報表,并給報表命名為R,然后我們給報表關聯到剛剛創建的關系數據源點上,如下圖所示:
創建一個按鈕,在按鈕的鼠標點擊事件中輸入如下的腳本:
#C.AddCurve(0,"SQL曲線");
#R.SqlSelectCmd("SELECT X,Y FROM Data ORDER BY ID ASC");
第一句腳本是給自由曲線增加一條曲線,名字是SQL曲線,索引號為0
第二句腳本是,讓報表執行SQL命令從關系庫中提取數據。
此時運行工程可以看到報表中有數據顯示。
為了繪制曲線,我們只需要做下面所示的工作即可。
雙擊報表,點擊報表的工具欄上的關系庫連接設置按鈕,如下圖所示:
在關系庫連接對話框中的關系數據源點處選擇剛剛創建的關系數據源點,并點擊“應答后觸發的腳本”按鈕,輸入如下的腳本
int i = 0;
for i=0to RowCount() step1
#C.CurveAddData(0,Val(1,i+1),Val(2,i+1));//參數分別是曲線索引,X值,Y值
next
這幾句腳本是取出報表中的數據,然后添加到曲線中。
此時運行工程就可以看到繪制好的曲線了。
如果希望顯示的曲線中超過50的顯示為紅色可以修改報表中的響應腳本如下。
int i = 0;
for i=0to RowCount() step1
if Val(2,i) > 50then
//參數分別是曲線索引,X值,Y值,顏色和自定義數據
#C.CurveAddDataEx(0,Val(1,i+1),Val(2,i+1),0,0);
else
//參數分別是曲線索引,X值,Y值
#C.CurveAddData(0,Val(1,i+1),Val(2,i+1));
endif
next
曲線如下圖所示:
通過更改曲線的屬性和調整腳本,還可以讓曲線顯示成直方圖,如下圖所示:
通過上面的介紹,我們看到紫金橋軟件提供的自由曲線還是比較靈活的。使用它可以非常容易的顯示各種數據的曲線。包括關系庫,實時數據,甚至用腳本任意生成的曲線。
關于更多的設置,請參考紫金橋的自由曲線使用幫助。本文地址:http://ca800.com/apply/d_1nrutga2l23vc_1.html
拷貝地址版權聲明:版權歸中國自動化網所有,轉載請注明出處!