轉(zhuǎn)帖|其它|編輯:郝浩|2010-10-14 14:59:56.000|閱讀 1309 次
概述:teechart vcl 版本廣泛應(yīng)用于多種開(kāi)發(fā)環(huán)境并得到很好的認(rèn)可,西班牙steema software sl公司于1997年10月又開(kāi)發(fā)了teechart pro activex。對(duì)于b/s的開(kāi)發(fā)模式無(wú)疑是一個(gè)好消息,由于它只需安裝在服務(wù)器端,客戶(hù)端無(wú)需安裝其他軟件,只要使用通用瀏覽器即可顯示統(tǒng)計(jì)圖形。 本文主要介紹ASP常數(shù)與變數(shù)應(yīng)用TeeChart。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷(xiāo)售中 >>
teechart vcl 版本廣泛應(yīng)用于多種開(kāi)發(fā)環(huán)境并得到很好的認(rèn)可,西班牙steema software sl公司于1997年10月又開(kāi)發(fā)了teechart pro activex。對(duì)于b/s的開(kāi)發(fā)模式無(wú)疑是一個(gè)好消息,由于它只需安裝在服務(wù)器端,客戶(hù)端無(wú)需安裝其他軟件,只要使用通用瀏覽器即可顯示統(tǒng)計(jì)圖形。
一、常數(shù)應(yīng)用(靜態(tài)法)
結(jié)合asp技術(shù)介紹一下teechart pro v5 activex組件常用屬性及應(yīng)用。
先來(lái)看一個(gè)以teechart組件來(lái)顯示"月產(chǎn)量"情況的二維柱狀圖實(shí)例:
<html><body>
set tchart1 = createobject("teechart.tchart")
tchart1.header.text(0)="月產(chǎn)量統(tǒng)計(jì)"
tchart1.addseries(1)
tchart1.aspect.view3d=0
tchart1.series(0).clear
tchart1.series(0).add 180, "1月",rgb(35,70,128)
tchart1.series(0).add 240, "2月",rgb(255,80,128)
tchart1.series(0).add 210, "3月",&hface87
tchart1.series(0).add 280, "4月",16777215
tchart1.export.savetojpegfile server.mappath("mychart.jpg"),false,jpegbestquality,100,tchart1.width, tchart1.height
set tchart1 = nothing
%>
<img src="mychart.jpg">
</body></html>
1)同asp其它組件的使用方法相同,首先創(chuàng)建對(duì)象。
set tchart1 = createobject("teechart.tchart")
2)利用其屬性顯示一個(gè)靜態(tài)的統(tǒng)計(jì)圖形。
tchart1.header.text(0)="月產(chǎn)量統(tǒng)計(jì)"
……
tchart1.series(0).add 210, "3月",&hface87
tchart1.series(0).add 280, "4月",16777215
3)生成統(tǒng)計(jì)圖形文件
tchart1.export.savetojpegfile server.mappath("mychart.jpg"),false,jpegbestquality,100,tchart1.width, tchart1.height
4)釋放對(duì)象
set tchart1 = nothing
上例中對(duì)象類(lèi)的很多屬性都是默認(rèn)值,我們可以根據(jù)具體情況進(jìn)行添加設(shè)置。下面詳細(xì)介紹一下teechart組件的其他常用屬性(采用程序注釋的形式列出)
<html> <head><title>teechart對(duì)象的屬性方法介紹</title></head>
<body>
<%
set tchart1 = createobject("teechart.tchart")
tchart1.height = 440 ' 整個(gè)圖表的高度
tchart1.width = 500 ' 整個(gè)圖表的寬度
'tchart1.header.text.clear
'tchart1.header.text.add "季度銷(xiāo)售量統(tǒng)計(jì)" ' 圖表標(biāo)題,方式也可采用 tchart1.header.text(0)="標(biāo)題"形式
tchart1.header.font.size = 22 ' 標(biāo)題字體大小
tchart1.header.font.bold = true ' 標(biāo)題字體是否粗體
tchart1.header.font.italic = true ' 標(biāo)題字體是否斜體
tchart1.panel.marginleft = 3 ' 圖表左邊距
tchart1.panel.gradient.visible = true ' 是否有底色
tchart1.panel.gradient.startcolor = &hb3def ' 圖表底色開(kāi)始顏色
tchart1.panel.gradient.endcolor = &hface87 ' 圖表底色結(jié)束顏色
tchart1.panel.bevelwidth = 0 ' 畫(huà)布向內(nèi)縮進(jìn)幅度
tchart1.addseries(0) ' 顯示圖形的方式,取值范圍為1 ~ 39
tchart1.aspect.view3d = false ' false表示2d圖形,true表示3d圖形
tchart1.aspect.chart3dpercent = 10 ' 若是3d圖形,表示其傾斜度
tchart1.aspect.zoom = 100 ' 圖形顯示比例
tchart1.aspect.orthogonal = true ' 3d圖表是否側(cè)轉(zhuǎn)
tchart1.aspect.rotation = -20 ' 如果圖表是側(cè)轉(zhuǎn)的,水平側(cè)轉(zhuǎn)角度-360~360
tchart1.aspect.elevation = 0 ' 如果圖表是側(cè)轉(zhuǎn)的,前后側(cè)轉(zhuǎn)角度-360~360
tchart1.aspect.perspective = 0 ' 3d圖形向心聚集程度
tchart1.aspect.chart3dpercent = 20 ' 3d圖形厚度1~100
tchart1.walls.bottom.size = 5 ' 如果是3d圖形,表示其橫坐標(biāo)厚度
tchart1.walls.bottom.color = rgb(35,70,128) ' 底座顏色
tchart1.walls.bottom.transparent = true ' 若是3d圖形,底座是否透明 tchart1.walls.back.pen.visible = true ' 參坐標(biāo)邊框是否顯示
tchart1.walls.left.size = 5 ' 如果是3d圖形,表示其縱坐標(biāo)厚度
tchart1.walls.left.color = 8454143 ' 縱坐標(biāo)顏色
tchart1.walls.left.transparent = true ' 若是3d圖形,縱坐標(biāo)壁是否透明
tchart1.legend.visible = true ' 是否顯示圖例
tchart1.legend.vertspacing = 9 ' 圖例框架高度
tchart1.legend.dividinglines.visible = false ' 圖例間是否有間隔線
'tchart1.series(0).clear
'tchart1.series(0).coloreachpoint = true
'tchart1.series(0).add 180,"1月",rgb(35,70,128) ' 靜態(tài)向圖表中添加顯示數(shù)據(jù),參數(shù)依次為數(shù)值大小,名稱(chēng),顏色
'tchart1.series(0).add 240, "2月",255
'tchart1.series(0).add 210, "3月",&hface87
tchart1.series(0).add 280, "4月",16777215
tchart1.axis.depth.visibl e= false ' 坐標(biāo)軸是3d透明時(shí),是否顯示內(nèi)壁
tchart1.axis.drawaxesbeforeseries = false ' 網(wǎng)格是否顯示在圖的前
tchart1.axis.left.title.caption = "產(chǎn)量(T)" ' 縱坐標(biāo)軸標(biāo)題
tchart1.axis.left.title.font.bold = true ' 縱坐標(biāo)軸標(biāo)題是否加粗
tchart1.axis.left.title.font.size = 9 ' 縱坐標(biāo)軸標(biāo)題大小
tchart1.axis.left.title.visible = true ' 是否顯示縱坐標(biāo)名稱(chēng)
tchart1.axis.left.labels.angle = 90 ' 縱坐標(biāo)字體傾斜角度
tchart1.axis.left.gridpen.visible = true ' 橫坐標(biāo)參量軸是否顯示
tchart1.axis.bottom.title.caption = "時(shí)間軸" ' 橫坐標(biāo)軸標(biāo)題
tchart1.axis.bottom.title.font.bold = true ' 橫坐標(biāo)軸標(biāo)題是否加粗
tchart1.axis.bottom.title.font.size= 9 ' 橫坐標(biāo)軸標(biāo)題大小
tchart1.axis.bottom.labels.angle = 0 ' 橫坐標(biāo)字體傾斜角度0~360
tchart1.axis.bottom.gridpen.visible = true ' 參縱坐標(biāo)軸是否顯示
tchart1.footer.text.add "圖表下標(biāo)題" ' 圖表的下標(biāo)題
tchart1.footer.font.size = 11 ' 下標(biāo)題字體大小
tchart1.footer.font.bold = true ' 下標(biāo)題字體是否為粗體
tchart1.footer.font.italic = false ' 下標(biāo)題字體是否為斜體
tchart1.export.savetojpegfile server.mappath("mychart.jpg"),false,jpegbestquality, 100 , tchart1.width , tchart1.height '導(dǎo)出存儲(chǔ)為mychart.jpg文件
set tchart1 = nothing
%> <img src="mychart.jpg">
</body></html>
注:1. tchart1.addseries(0)圖形顯示方式的屬性,可以從0~39測(cè)試一下,找到理想的顯示方式。
2.對(duì)于顏色的引用,采用rgb三種表示方法,例如:rgb(255,255,255) = &hffffff = 16777215。具體的換算方法不在說(shuō)明。
3.屬性為true和false的可以用1和0替代表示。
對(duì)于組圖的添加,下面列舉一個(gè)顯示二組數(shù)據(jù)的例子。
<%set tchart1 = createobject("teechart.tchart")
tchart1.header.text(0)="月產(chǎn)量"'標(biāo)題
tchart1.addseries(1)
tchart1.addseries(1)
tchart1.series(0).add 180, "1月",rgb(255,255,255)
tchart1.series(1).add 240, "1月",255
tchart1.series(0).add 280, "2月",rgb(255,255,255)
tchart1.series(1).add 200, "2月",255
tchart1.series(0).add 150, "3月",rgb(255,255,255)
tchart1.series(1).add 320, "3月",255
tchart1.series(0).add 360, "4月",rgb(255,255,255)
tchart1.series(0).marks.visible = true ' 是否顯示數(shù)據(jù)標(biāo)題
tchart1.series(0).marks.style = 0 ' 數(shù)據(jù)顯示風(fēng)格0~9,0為數(shù)值,1為百分比……
tchart1.series(1).marks.style=0
tchart1.export.savetojpegfile server.mappath("mychart.jpg"),false,jpegbestquality,100,tchart1.width, tchart1.height
set tchart1 = nothing
%>
二、動(dòng)態(tài)法
在實(shí)際工作中,通常是從現(xiàn)有的數(shù)據(jù)庫(kù)中統(tǒng)計(jì)數(shù)據(jù)。例子:利用ado連接access數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)為(dba04.mdb),表的兩列為NY,ycyl。(NY=200401,200402,……),ycyl(103,210,……):
<%dim outputstream
set tchart1 = createobject("teechart.tchart")
tchart1.header.text(0)="月產(chǎn)量"'標(biāo)題
tchart1.addseries(0)'顯示圖形的風(fēng)格數(shù)值為1 ~39見(jiàn)下
set conn=server.createobject("adodb.connection")
set rst=server.createobject("adodb.recordset")
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("zcw.mdb")
strsql = "select * from test"
rst.open strsql,conn,1,1
if rst.recordcount > 0 then
tchart1.series(0).datasource = rst
tchart1.series(0).labelssource="colname"
tchart1.series(0).yvalues.valuesource="colvalue"
else
tchart1.series(0).fillsamplevalues(12)
tchart1.header.text(0)="沒(méi)有結(jié)果,隨機(jī)顯示數(shù)據(jù)"
end if
tchart1.series(0).marks.visible=true
tchart1.series(0).marks.style=4
tchart1.export.savetojpegfile server.mappath("mychart.jpg"),false,jpegbestquality,100,tchart1.width, tchart1.height
set tchart1 = nothing
rst.close
set conn = nothing
%> <img src="mychart.jpg">
以上的三個(gè)實(shí)例都是生成靜態(tài)jpg圖片文件后顯示的,如果對(duì)于瀏覽結(jié)果沒(méi)有保存價(jià)值,我們可以使用png(portable network graphics)方式顯示。
<% dim charttype, outputstream, viewtype
set chart1 = createobject("teechart.tchart")
chart1.addseries(0)
chart1.series(0).fillsamplevalues 20 ' 隨機(jī)生成數(shù)據(jù)
outputstream=chart1.export.aspng.savetostream
set chart1=nothing
response.binarywrite outputstream
%>
慧都2010促銷(xiāo)季開(kāi)幕,TeeChart for .NET 8折促銷(xiāo)!詳情咨詢(xún):400-700-1020或023-66090381活動(dòng)詳情://fc6vip.cn/zh-CN/Products_cn/TeeChart_chinese.html
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:網(wǎng)絡(luò)轉(zhuǎn)載