<%
function draw(conn,ssql,title,axy,picname)
Dim m_rs '记录集对象
Dim m_cspace 'OWC.ChartSpace object
Dim m_fso '文件系统对象
Dim m_objBinaryFile '二进值文件流对象
Dim c 'OWC 常量对象
Dim cht '图表临时参考变量
Dim ax '数轴的临时参考变量
Dim axs
Dim fnt 'OWCFont字体的临时参考变量
Dim sFullFileName '输出GIF文件的临时参考路径
'创建一个ADO链接和记录集对象
set m_rs = Server.CreateObject("ADODB.Recordset")
m_rs.CursorLocation = 3 'adUseClient
m_rs.Open sSQL, conn, 3 'adOpenStatic
dim colorArr
colorArr = Array("red","blue","black","purple","yellow","orange","green","lightgreen")
'增加一个带有图例的簇列图表
set m_cspace = server.CreateObject("OWC.Chart") ''绑定数据源
set cht = m_cspace.Charts.Add()
set c = m_cspace.Constants
m_cspace.DataSource = m_rs
cht.Type =6 ''改变线条类型
'设置图表的数据源,月份添加到分类组,统计作为图表中各项取值
m_cspace.Charts(0).Axes(c.chAxisPositionLeft).Line.Weight = 1
Set axs = m_cspace.Charts(0).Axes(c.chAxisPositionLeft)
axs.HasMajorGridlines = true
axs.MajorGridlines.Line.Color = &HCCCCCC
m_cspace.Border.Weight = 0
m_cspace.Charts(0).PlotArea.Interior.Color = &HFFFFFF
for i=0 to ubound(serverArr)-1
'response.Write(serverArr(i,0))
m_cspace.Charts(0).SeriesCollection.Add
m_cspace.Charts(0).SeriesCollection(i).SetData c.chDimSeriesNames, -1, serverArr(i)
m_cspace.Charts(0).SeriesCollection(i).SetData c.chDimCategories, 0, "dd"
m_cspace.Charts(0).SeriesCollection(i).SetData c.chDimValues, 0, "ss"
m_cspace.Charts(0).SeriesCollection(i).Line.Weight = 0 ''线条宽度
if i<6 then
m_cspace.Charts(0).SeriesCollection(i).Line.Color=colorArr(i) ''线条颜色,颜色只定义了6种,过多的需要再改
else
m_cspace.Charts(0).SeriesCollection(i).Line.Color=&Hffff00+100*(i+6) ''线条颜色
end if
m_cspace.Charts(0).SeriesCollection(i).DataLabelsCollection.Add() ''添加节点上的数据,默认为flase,这是折线的表示
m_cspace.Charts(0).SeriesCollection(i).DataLabelsCollection(0).HasValue=true
next
m_cspace.Charts(0).HasLegend = True
'增加一个图表标题,并格式化标题
cht.HasTitle = True
cht.Title.Caption = title
set fnt = cht.Title.Font
fnt.Name = "宋体"
fnt.Size = 10
fnt.Bold = True
'对分类轴添加标题,并格式化标题
set ax = cht.Axes(c.chAxisPositionBottom)
ax.HasTitle = True
ax.Title.Caption = axy
set fnt = ax.Title.Font
fnt.Name = "宋体"
fnt.Size = 9
fnt.Bold = True
'对数值轴添加标题,并格式化标题
set ax = cht.Axes(c.chAxisPositionleft)
'ax.NumberFormat = "Currency"
ax.HasTitle = True
ax.Title.Caption = "点击量"
set fnt = ax.Title.Font
fnt.Name = "宋体"
fnt.Size = 9
fnt.Bold = True
fnt.color="red"
set m_fso = CreateObject("Scripting.FileSystemObject")
sFullFileName = Server.MapPath(".") & "/"&picname
if m_fso.FileExists(sFullFileName) then
m_fso.DeleteFile(sFullFileName)
end if
ShowFileList Server.MapPath(".")&"/chart/",picname
m_cspace.ExportPicture sFullFileName, "GIF", 950, 500
response.write "<table align='center'><tr><td><img src='"&picname&"'></td></tr><table>"
response.Flush()
end function
Function ShowFileList(folderspec,filename)
Dim fso, f, f1, fc
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFolder(folderspec)
Set fc = f.Files
For Each f1 in fc
sFullFileName = Server.MapPath(".") & "/chart/" &f1.name
if (fso.FileExists(sFullFileName) and sFullFileName<>Server.MapPath(".") &"/"&filename )then
fso.DeleteFile(sFullFileName)
end if
Next
End Function
sql="select name as dd,count(hit) as ss from tablename group by name "
draw conn,sql,title,"省份","chart/yhitdraw_"&timer&".gif"%>
function draw(conn,ssql,title,axy,picname)
Dim m_rs '记录集对象
Dim m_cspace 'OWC.ChartSpace object
Dim m_fso '文件系统对象
Dim m_objBinaryFile '二进值文件流对象
Dim c 'OWC 常量对象
Dim cht '图表临时参考变量
Dim ax '数轴的临时参考变量
Dim axs
Dim fnt 'OWCFont字体的临时参考变量
Dim sFullFileName '输出GIF文件的临时参考路径
'创建一个ADO链接和记录集对象
set m_rs = Server.CreateObject("ADODB.Recordset")
m_rs.CursorLocation = 3 'adUseClient
m_rs.Open sSQL, conn, 3 'adOpenStatic
dim colorArr
colorArr = Array("red","blue","black","purple","yellow","orange","green","lightgreen")
'增加一个带有图例的簇列图表
set m_cspace = server.CreateObject("OWC.Chart") ''绑定数据源
set cht = m_cspace.Charts.Add()
set c = m_cspace.Constants
m_cspace.DataSource = m_rs
cht.Type =6 ''改变线条类型
'设置图表的数据源,月份添加到分类组,统计作为图表中各项取值
m_cspace.Charts(0).Axes(c.chAxisPositionLeft).Line.Weight = 1
Set axs = m_cspace.Charts(0).Axes(c.chAxisPositionLeft)
axs.HasMajorGridlines = true
axs.MajorGridlines.Line.Color = &HCCCCCC
m_cspace.Border.Weight = 0
m_cspace.Charts(0).PlotArea.Interior.Color = &HFFFFFF
for i=0 to ubound(serverArr)-1
'response.Write(serverArr(i,0))
m_cspace.Charts(0).SeriesCollection.Add
m_cspace.Charts(0).SeriesCollection(i).SetData c.chDimSeriesNames, -1, serverArr(i)
m_cspace.Charts(0).SeriesCollection(i).SetData c.chDimCategories, 0, "dd"
m_cspace.Charts(0).SeriesCollection(i).SetData c.chDimValues, 0, "ss"
m_cspace.Charts(0).SeriesCollection(i).Line.Weight = 0 ''线条宽度
if i<6 then
m_cspace.Charts(0).SeriesCollection(i).Line.Color=colorArr(i) ''线条颜色,颜色只定义了6种,过多的需要再改
else
m_cspace.Charts(0).SeriesCollection(i).Line.Color=&Hffff00+100*(i+6) ''线条颜色
end if
m_cspace.Charts(0).SeriesCollection(i).DataLabelsCollection.Add() ''添加节点上的数据,默认为flase,这是折线的表示
m_cspace.Charts(0).SeriesCollection(i).DataLabelsCollection(0).HasValue=true
next
m_cspace.Charts(0).HasLegend = True
'增加一个图表标题,并格式化标题
cht.HasTitle = True
cht.Title.Caption = title
set fnt = cht.Title.Font
fnt.Name = "宋体"
fnt.Size = 10
fnt.Bold = True
'对分类轴添加标题,并格式化标题
set ax = cht.Axes(c.chAxisPositionBottom)
ax.HasTitle = True
ax.Title.Caption = axy
set fnt = ax.Title.Font
fnt.Name = "宋体"
fnt.Size = 9
fnt.Bold = True
'对数值轴添加标题,并格式化标题
set ax = cht.Axes(c.chAxisPositionleft)
'ax.NumberFormat = "Currency"
ax.HasTitle = True
ax.Title.Caption = "点击量"
set fnt = ax.Title.Font
fnt.Name = "宋体"
fnt.Size = 9
fnt.Bold = True
fnt.color="red"
set m_fso = CreateObject("Scripting.FileSystemObject")
sFullFileName = Server.MapPath(".") & "/"&picname
if m_fso.FileExists(sFullFileName) then
m_fso.DeleteFile(sFullFileName)
end if
ShowFileList Server.MapPath(".")&"/chart/",picname
m_cspace.ExportPicture sFullFileName, "GIF", 950, 500
response.write "<table align='center'><tr><td><img src='"&picname&"'></td></tr><table>"
response.Flush()
end function
Function ShowFileList(folderspec,filename)
Dim fso, f, f1, fc
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFolder(folderspec)
Set fc = f.Files
For Each f1 in fc
sFullFileName = Server.MapPath(".") & "/chart/" &f1.name
if (fso.FileExists(sFullFileName) and sFullFileName<>Server.MapPath(".") &"/"&filename )then
fso.DeleteFile(sFullFileName)
end if
Next
End Function
sql="select name as dd,count(hit) as ss from tablename group by name "
draw conn,sql,title,"省份","chart/yhitdraw_"&timer&".gif"%>