- 相關推薦
VC6中調用 ProEssentials v5圖表組件實現(xiàn)科學圖表繪制
1 ProEssentials v5簡介:
ProEssentials v5是應用于windows 服務器端和客戶端開發(fā)的一系列圖表組件,它是對繪制圖表以及圖表分析功能所需要的數(shù)據(jù)和方法的簡單封裝。可以提供Winforms、Webforms、ActiveX、VCL和DLL五種界面。它的圖表類型很多,包括:一般圖表、科學圖表、3維圖表、極坐標圖表、餅狀圖表,幾乎覆蓋了所有常見的圖表類型。我們可以很方便的調用ProEssentials v5的函數(shù)庫,添加繪制圖表的功能,并可以對圖表進行分析,如:回歸,求最大值,擬合曲線等。我們還可以很方便的將圖表文件的數(shù)據(jù)文件進行保存,或者導出我們希望格式的圖片,如bmp、jpg、png。注:一般圖表與科學圖表之間的區(qū)別在于,一般圖表僅提供一維坐標數(shù)據(jù)繪圖,而另一維坐標數(shù)據(jù)是等間距的。科學圖表提供二維坐標數(shù)據(jù),繪制任意的散點數(shù)據(jù)。
2 具體應用方法:
(1)無論開發(fā)的是OCX的應用程序、DLL的應用程序還是VCL的應用程序,首先要做的就是根據(jù)開發(fā)環(huán)境的操作系統(tǒng)類型,拷貝PEGRP32C.DLL到相應的在本地硬盤系統(tǒng)盤中去。如果是win95或者win98操作系統(tǒng),拷貝PEGRP32C.DLL到System目錄下;如果是win2000操作系統(tǒng),拷貝PEGRP32C.DLL到System32目錄下。PEGRAPHS.HLP文件是可選的
(2)工程里面添加頭文件Pegrpapi.h。
選擇需要調用的函數(shù),完成圖表的繪制功能。在此簡介,ProEssentials v5函數(shù)和變量的命名規(guī)則。以PEP_為前綴的變量類型如下:
PEP_b Boolean (4 bytes)
PEP_n Integer (4 bytes)
PEP_dw Double Word (4 bytes)
PEP_sz Null Terminated array of characters.
PEP_f Single (4 bytes) or Double (8 bytes) floating point.
PEP_na Array of Integer (4 bytes)
PEP_dwa Array of Double Word (4 bytes)
PEP_sza Array of Null Terminated strings.
PEP_fa Array of Single (4 bytes) or Double (8 bytes) floating point.
PEP_struct Various structures
要用DLL調用來設定獲取以上變量類型的值,可以根據(jù)以上變量類型的前綴來判斷應該:
PEP_b PEnset / PEnget
PEP_n PEnset / PEnget
PEP_dw PElset / PElget (16 bit) PEnset / PEnget (32 bit)
PEP_sz PEszset / PEszget.
PEP_f PEvset / PEvget
PEP_na PEvset, PEvsetcell, PEvsetcellEx / PEvget, PEvgetcell, PEvgetcellEx
PEP_dwa PEvset, PEvsetcell, PEvsetcellEx / PEvget, PEvgetcell, PEvgetcellEx
PEP_sza PEvset, PEvsetcell, PEvsetcellEx / PEvget, PEvgetcell, PEvgetcellEx
PEP_fa PEvset, PEvsetcell, PEvsetcellEx / PEvget, PEvgetcell, PEvgetcellEx
PEP_struct PEvset, / Pevget
(3)選擇適當?shù)淖兞浚瑢?shù)據(jù)賦予這些變量。
一般圖表需要給PEP_faYDATA 、PEP_szaPOINTLABELS賦值。
科學圖表和極坐標圖表需要給PEP_faXDATA 、PEP_faYDATA和 PEP_faZDATA賦值。
3D的科學圖表需要給PEP_faXDATA, PEP_faYDATA, PEP_faZDATA賦值,但是3D的柱狀圖僅需要PEP_faYDATA。
餅狀圖用PEP_faXDATA 來控制“餅”的厚度,
有以下的幾個DLL函數(shù)可以為圖表賦值:
PEvset ():一次可以全部的完成所有數(shù)據(jù)的賦值。
PEvsetEx ():一次可以完成部分數(shù)據(jù)的賦值。.
Pevsetcell():一次僅可以為一維數(shù)據(jù)賦值。
PevsetcellEx():一次僅可以為一個點賦值。
因此Pevset()是最快的賦值方法。
(4)選擇選擇圖表中線(點)顏色的方法
顏色是由PEP_dwaSUBSETCOLORS控制的,線型是由PEP_naSUBSETLINETYPES控制的,點型是由PEP_naSUBSETPOINTTYPES控制的。
以下代碼是在C/C 中實現(xiàn)線型設定方法。
int nTmpStyles[3];
nTmpStyles[0] = PELT_THINSOLID;
nTmpStyles[1] = PELT_DASH;
nTmpStyles[2] = PELT_DOT;
PEvset(hPE, PEP_naSUBSETLINETYPES, nTmpStyles, 3);
注:以上代碼使用的Pevset()函數(shù),也可以使用Pevsetcell()函數(shù)來實現(xiàn)線型的設定方法。代碼如下:
int nTmpStyle;
nTmpStyle = PELT_THINSOLID;
PEvsetcell(hPE, PEP_naSUBSETLINETYPES, 0,
【VC6中調用 ProEssentials v5圖表組件實現(xiàn)科學圖表繪制】相關文章:
聯(lián)鎖圖表軟件設計的實現(xiàn)技術與結構03-06
基礎會計教學中圖表應用的探討03-25
基于Mschart的數(shù)據(jù)庫圖表應用編程03-18
土木工程論文格式及圖表要求03-28
基于COM技術的公式計算組件的開發(fā)與實現(xiàn)11-23
硬件密碼組件與軟件密碼組件的比較研究03-18