以下代码存成asp文件: <%
Dim strPicFile'生成的临时图表图片名
strPicFile=server.MapPath(".")&"\tmpchart.gif"
''图表数据部分,可以从数据库中取得
sdata1="45,75,78,67,45,75,78,80"
sdata2="36,56,23,73"
x_line="1,2,3,4"
a_group="A,B"
a_group_arr = split(a_group,",")
x_line_arr = split(x_line,",")
data1_arr = split(Sdata1,",")
data2_arr = split(Sdata2,",")

''-----------------生成图表开始---------------------------------------------------
Set ChartTmp = CreateObject("OWC10.ChartSpace")
Set cc = ChartTmp.Constants ''返回一个对象,此对象允许脚本用户使用已命名的常量。
'ChartTmp.Charts.delete(0)
Set cht = ChartTmp.Charts.Add(0) ''添加一个图表对象
cht.Type=cc.chChartTypeColumnClustered'
''设置图表工作区中包含标题
ChartTmp.HasChartSpaceTitle = true
with ChartTmp.ChartSpaceTitle
.Caption ="测试图表"''设置图表工作区标题内容
''有关字体的设置
.Font.Bold = True ''设置图表工作区标题内容是否粗体
.Font.Name = "Times New Roman" ''设置图表工作区标题内容的字体
.Font.Size = 18 ''设置图表工作区标题内容的大小(单位:磅)
end with
''-------设置图例--------------------------------------------
cht.HasLegend = True ''指定图表工作区中含有图例
cht.Legend.Font.Size = 9 ''其他有关字体项的设置参见设置图表标题部分
cht.Legend.Position = cc.chLegendPositionBottom ''设置图例对其方式
''-------添加数据系列1(柱状图)--------------------------------------------
Set Series0 = cht.SeriesCollection.Add() ''添加一个數據系列
with Series0
' .Type=cc.chChartTypeColumnClustered' (省略同图表基本类型)
.SetData cc.chDimSeriesNames, cc.chDataLiteral, a_group_arr(0) ''系列
.SetData cc.chDimCategories, cc.chDataLiteral, x_line_arr ''横(X)轴数据(分类轴)
.SetData cc.chDimValues, cc.chDataLiteral, data1_arr''''纵(Y)轴数据
end with
Set dl = Series0.DataLabelsCollection.Add ''添加图例的数据标记
dl.HasValue = True'显示数值
''-------添加数据系列2(柱状图)--------------------------------------------
Set Series0 = cht.SeriesCollection.Add() ''添加一个數據系列
with Series0
' .Type=cc.chChartTypeColumnClustered' (省略同图表基本类型)
.SetData cc.chDimSeriesNames, cc.chDataLiteral, a_group_arr(1)''系列
.SetData cc.chDimCategories, cc.chDataLiteral, x_line_arr ''横(X)轴数据(分类轴)
.SetData cc.chDimValues, cc.chDataLiteral, data2_arr''''纵(Y)轴数据
end with
Set dl = Series0.DataLabelsCollection.Add ''添加图例的数据标记
dl.HasValue = True
''-------添加数据系列1(折线图)------------------------------------------
Set Series0 = cht.SeriesCollection.Add() ''添加一个數據系列
with Series0
.Type=cc.chChartTypeLineMarkers'(折线图)
.setData cc.chDimSeriesNames, cc.chDataLiteral, a_group_arr(0)''系列
.SetData cc.chDimCategories, cc.chDataLiteral, x_line_arr ''横(X)轴数据(分类轴)
.SetData cc.chDimValues, cc.chDataLiteral, data1_arr''''纵(Y)轴数据
end with
''-------添加数据系列2(折线图)------------------------------------------
Set Series0 = cht.SeriesCollection.Add() ''添加一个
with Series0
.Type=cc.chChartTypeLineMarkers'(折线图)
.setData cc.chDimSeriesNames, cc.chDataLiteral, a_group_arr(1)''系列
.SetData cc.chDimCategories, cc.chDataLiteral, x_line_arr ''横(X)轴数据(分类轴)
.SetData cc.chDimValues, cc.chDataLiteral, data2_arr''''纵(Y)轴数据
end with
Set dl = Series0.DataLabelsCollection.Add ''添加图例的数据标记
dl.HasValue = true'显示数值
dl.HasPercentage = true'显示百分比

'导出图片
ChartTmp.ExportPicture strPicFile, "GIF", 760, 350

Set ChartTmp = Nothing
''生成图表结束
%>

<img src=tmpchart.gif>附:常见图表类型参考 chChartTypeColumnClustered 柱状图 chChartTypeBarClustered 条形图 chChartTypePie 饼图 chChartTypeArea 面积图 chChartTypeRadarLine 雷达线图 chChartTypeSmoothLine 平滑曲线图 chChartTypeDoughnut 环形图
|