asp如何使用Office Chart 9.0 制作图表?
时间:2010-06-05 12:41:00
如何使用Office Chart 9.0 制作图表?
代码如下:
chart90.asp
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft FrontPage 4.0">
<TITLE>图表制作 - aspxhome.com</TITLE>
</HEAD>
<BODY>
<object id=ChartSpace1 classid=CLSID:0002E500-0000-0000-C000-000000000046
style="width:80%;height:350"></object>
<object id=ADOConnection1 classid=CLSID:00000514-0000-0010-8000-00AA006D2EA4></object>
<script Language=VBScript>
Sub Window_OnLoad()
Dim rs, categories, values
categories = ""
values = ""
ADOConnection1.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=c:\nwind.mdb"
' 建立"nwind.mdb"库,并创建"Sales for 2000"的表
Set rs = ADOConnection1.Execute("SELECT * FROM [Sales for 2000]")
' 打开连接执行SQL查询 ()
rs.MoveFirst
Do while Not rs.EOF
categories = categories & rs.Fields(0).Value & Chr(9)
values = values & rs.Fields(1).Value & Chr(9)
rs.MoveNext
' 对每一字段记录产生一个由制表符分隔的字符串
Loop
rs.Close
ADOConnection1.Close
categories = Left(categories, Len(categories) - 1)
values = Left(values, Len(values) - 1)
' 删去字符串末尾的分隔符
ChartSpace1.Clear
ChartSpace1.Charts.Add
ChartSpace1.Charts(0).SeriesCollection.Add
ChartSpace1.Charts(0).SeriesCollection(0).Caption = "Sales"
' 创建一个系列
Set c = ChartSpace1.Constants
ChartSpace1.Charts(0).SeriesCollection(0).SetData c.chDimCategories, c.chDataLiteral, categories
ChartSpace1.Charts(0).SeriesCollection(0).SetData c.chDimValues, c.chDataLiteral, values
' 使用recordset生成的字符串设置系列的类型和值
----------------------------------------------------------------------------------------------------------------
ChartSpace1.HasChartSpaceTitle = True
With ChartSpace1.ChartSpaceTitle
.Caption = "Monthly Sales Data"
.Font.Size = 12
.Font.Color = "#FF0000"
.Font.Bold = True
End with
ChartSpace1.HasChartSpaceLegend = True
With ChartSpace1.ChartSpaceLegend
.Position = c.chLegendPositionright
.Font.Color = "#009999"
.Font.Size = 9
End with
' 设置图表工作区的标题,并将图表工作区的图例放在工作区右边
----------------------------------------------------------------------------------------------------------------
ChartSpace1.Charts(0).Type = c.chChartTypeBarClustered
' 设置图表类型
With ChartSpace1.Charts(0).Axes(c.chAxisPositionBottom)
' 轴的坐标格式、样式
.NumberFormat = "#,##0"
.Font.Size = 9
End with
With ChartSpace1.Charts(0).Axes(c.chAxisPositionLeft)
.Font.Color = "#0000ff"
.Font.Size = 9
End with
end if
End Sub
</script>
</BODY>
</HTML>
图表类型常数表:
序号 Constant Value
1 chChartTypeCombo -1
2 chChartTypeColumnClustered 0
3 chChartTypeColumnStacked 1
4 chChartTypeColumnStacked100 2
5 chChartTypeBarClustered 3
6 chChartTypeBarStacked 4
7 chChartTypeBarStacked100 5
8 chChartTypeLine 6
9 chChartTypeLineMarkers 7
10 chChartTypeLineStacked 8
11 chChartTypeLineStackedMarkers 9
12 chChartTypeLineStacked100 10
13 chChartTypeLineStacked100Markers 11
14 chChartTypeSmoothLine 12
15 chChartTypeSmoothLineMarkers 13
16 chChartTypeSmoothLineStacked 14
17 chChartTypeSmoothLineStackedMarkers 15
18 chChartTypeSmoothLineStacked100 16
19 chChartTypeSmoothLineStacked100Markers 17
20 chChartTypePie 18
21 chChartTypePieExploded 19
22 chChartTypePieStacked 20
23 chChartTypeScatterMarkers 21
24 chChartTypeScatterSmoothLineMarkers 22
25 chChartTypeScatterSmoothLine 23
26 chChartTypeScatterLineMarkers 24
27 chChartTypeScatterLine 25
28 chChartTypeScatterLineFilled 26
29 chChartTypeBubble 27
30 chChartTypeBubbleLine 28
31 chChartTypeArea 29
32 chChartTypeAreaStacked 30
33 chChartTypeAreaStacked100 31
34 chChartTypeDoughnut 32
35 chChartTypeDoughnutExploded 33
36 chChartTypeRadarLine 34
37 chChartTypeRadarLineMarkers 35
38 chChartTypeRadarLineFilled 36
39 chChartTypeRadarSmoothLine 37
40 chChartTypeRadarSmoothLineMarkers 38
41 chChartTypeStockHLC 39
42 chChartTypeStockOHLC 40
43 chChartTypePolarMarkers 41
44 chChartTypePolarLine 42
45 chChartTypePolarLineMarkers 43
46 chChartTypePolarSmoothLine 44
47 chChartTypePolarSmoothLineMarkers 45