快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

用ASP生成CHART

<SCRIPT LANGUAGE="VBScript" RUNAT="SERVER">
function makechart(title, numarray, labelarray, color, bgcolor, bordersize, maxheight, maxwidth, addvalues)
\\\'Function makechart version 3

\\\'Jason Borovoy
\\\'title: Chart Title
\\\'numarray: An array of values for the chart
\\\'labelarray: An array of labels coresponding to the values must me present
\\\'color If null uses different colors for bars if not null all bars color you specify
\\\'bgcolor Background color.
\\\'bordersize: border size or 0 for no border.
\\\'maxheight: maximum height for chart not including labels
\\\'maxwidth: width of each column
\\\'addvalues: true or false depending if you want the actual values shown on the chart
\\\'when you call the function use : response.write makechart(parameters)

\\\'actually returnstring would be a better name
dim tablestring
\\\'max value is maximum table value
dim max
\\\'maxlength maximum length of labels
dim maxlength
dim tempnumarray
dim templabelarray
dim heightarray
Dim colorarray
\\\'value to multiplie chart values by to get relitive size
Dim multiplier
\\\'if data valid
if maxheight > 0 and maxwidth > 0 and ubound(labelarray) = ubound(numarray) then
\\\'colorarray: color of each bars if more bars then colors loop through
\\\'if you don\\\'t like my choices change them, add them, delete them.
colorarray = array("red","blue","yellow","navy","orange","purple","green")
templabelarray = labelarray
tempnumarray = numarray
heightarray = array()
max = 0
maxlength = 0
tablestring = "<TABLE bgcolor=\\\'" & bgcolor & "\\\' border=\\\'" & bordersize & "\\\'>" & _
"<tr><td><TABLE border=\\\'0\\\' cellspacing=\\\'1\\\' cellpadding=\\\'0\\\'>" & vbCrLf
\\\'get maximum value
for each stuff in tempnumarray
if stuff > max then max = stuff end if
next
\\\'calculate multiplier
multiplier = maxheight/max
\\\'populate array
for counter = 0 to ubound(tempnumarray)
if tempnumarray(counter) = max then
redim preserve heightarray(counter)
heightarray(counter) = maxheight
else
redim preserve heightarray(counter)
heightarray(counter) = tempnumarray(counter) * multiplier
end if
next


\\\'set title
tablestring = tablestring & "<TR><TH colspan=\\\'" & ubound(tempnumarray)+1 & "\\\'>" & _
"<FONT FACE=\\\'Verdana, Arial, Helvetica\\\' SIZE=\\\'1\\\'><U>" & title & "</TH></TR>" & _
vbCrLf & "<TR>" & vbCrLf
\\\'loop through values
for counter = 0 to ubound(tempnumarray)
tablestring = tablestring & vbTab & "<TD valign=\\\'bottom\\\' align=\\\'center\\\' >" & _
"<FONT FACE=\\\'Verdana, Arial, Helvetica\\\' SIZE=\\\'1\\\'>" & _
"<table border=\\\'0\\\' cellpadding=\\\'0\\\' width=\\\'" & maxwidth & "\\\'><tr>" & _
"<tr><td valign=\\\'bottom\\\' bgcolor=\\\'"
if not isNUll(color) then
\\\'if color present use that color for bars
tablestring = tablestring & color
else
\\\'if not loop through colorarray
tablestring = tablestring & colorarray(counter mod (ubound(colorarray)+1))
end if
tablestring = tablestring & "\\\' height=\\\'" & _
round(heightarray(counter),2) & "\\\'><img src=\\\'chart.gif\\\' width=\\\'1\\\' height=\\\'1\\\'>" & _
"</td></tr></table>"
if addvalues then
\\\'print actual values
tablestring = tablestring & "<BR>" & tempnumarray(counter)
end if
tablestring = tablestring & "</TD>" & vbCrLf
next

tablestring = tablestring & "</TR>" & vbCrLf
\\\'calculate max lenght of labels
for each stuff in labelarray
if len(stuff) >= maxlength then maxlength = len(stuff)
next
\\\'print labels and set each to maxlength
for each stuff in labelarray
tablestring = tablestring & vbTab & "<TD align=\\\'center\\\'><" & _
"FONT FACE=\\\'Verdana, Arial, Helvetica\\\' SIZE=\\\'1\\\'><B> "
for count = 0 to round((maxlength - len(stuff))/2)
tablestring = tablestring & " "
next
if maxlength mod 2 <> 0 then tablestring = tablestring & " "
tablestring = tablestring & stuff
for count = 0 to round((maxlength - len(stuff))/2)
tablestring = tablestring & " "
next
tablestring = tablestring & " </TD>" & vbCrLf
next

tablestring = tablestring & "</TABLE></td></tr></table>" & vbCrLf
makechart = tablestring
else
Response.Write "Error Function Makechart: maxwidth and maxlength have to be greater " & _
" then 0 or number of labels not equal to number of values"
end if
end function


dim stuff
dim labelstuff
\\\' Demo 1
stuff = Array(5,30)
labelstuff = Array("北京", "广州")
Response.Write makechart("Demo 1", stuff, labelstuff, null, "gold",10, 50,40,true)

</SCRIPT>
返回类别: 教程
上一教程: 正则表达式简介(4)
下一教程: 用ASP、VB和XML建立互联网应用程序(3)

您可以阅读与"用ASP生成CHART"相关的教程:
· 在ASP中使用FSO组件生成HTML页面
· 在ASP中如何将代码生成的文件设为只读
· ASP生成XBM图可用作验证码
· asp实现在web中显示电子表格数据(二)生成HTML表格
· 一个用ASP生成HTML的新方式
    微笑服务 优质保证 索取样品