急!急!急! asp中怎么用owc画图啊?
我用的是OWC11
在创建对象的时候出错了,是不是还要装其他东东才能使用OWC啊????????
具体代码如下(出错行已标出):
<% Option Explicit %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN ">
<HTML>
<HEAD>
<meta http-equiv=content-type content= "text/html; charset=gb2312 ">
<TITLE> 利用OWC画图的例子 </TITLE>
<%
Function ExportChartToGIF(objCSpace, strAbsFilePath, strRelFilePath)
Dim strFileName
Randomize
strFileName = Timer & Rnd & ".gif "
objCSpace.ExportPicture strAbsFilePath & " " & strFileName, "gif ", 600, 350
ExportChartToGIF = strRelFilePath & "/ " & strFileName
End Function
Sub CleanUpGIF(GIFpath)
Dim objFS
Dim objFolder
Dim gif
set objFS = Server.CreateObject( "Scripting.FileSystemObject ")
set objFolder = objFS.GetFolder(GIFpath)
for each gif in objFolder.Files
if instr(gif.Name, ".gif ") > 0 and DateDiff( "n ", gif.DateLastModified, now) > 10 then
objFS.DeleteFile GIFpath & " " & gif.Name, True
end if
next
set objFolder = nothing
set objFS = nothing
End Sub
%>
</HEAD>
<BODY BGCOLOR= "#FFFFFF ">
<%
dim objChartSpace
dim objChart
dim objSeries
dim objConn
dim objRS
dim c
dim series
dim strChartAbsPath
dim strChartRelPath
dim strChartFile
strChartAbsPath = Server.MapPath( "/mypath/temp ")
strChartRelPath = "temp "
set objChartSpace = server.CreateObject( "OWC.Chart ") ' 本行出错 本行出错 本行出错
set objChart = objChartSpace.Charts.Add()
set c = objChartSpace.Constants
objChart.Type = c.chChartTypeLineMarkers
objChart.HasLegend = True
set objConn = Server.CreateObject( "ADODB.Connection ")
objConn.Open "provider=sqloledb;data source=myserver;initial catalog=testdb;user id=myuid;password=mypswd; "
set objRS = Server.CreateObject( "ADODB.Recordset ")
set objRS.ActiveConnection = objConn
objRS.CursorType = adOpenStatic
objRS.CursorLocation = adUseClient
objRS.Open "select * from testscore order by test "
set objChartSpace.DataSource = objRS
objChart.SetData c.chDimSeriesNames, 0, "student "
for each objSeries in objChart.SeriesCollection
objSeries.SetData c.chDimCategories, 0, "test "
objSeries.SetData c.chDimValues, 0, "score "
next
for each axis in objChart.Axes
axis.HasTitle = True
if axis.Type = c.chCategoryAxis then
axis.Title.Caption = "Test "
else
axis.Title.Caption = "Score "
end if
next
objChart.SeriesCollection(2).Interior.Color = "red "
objChart.SeriesCollection(2).Line.Color = "red "
strChartFile = ExportChartToGIF(objChartSpace, strChartAbsPath, strChartRelPath)
Response.Write " <IMG SRC= " " " & strChartFile & " " "> " & " <P> "
CleanUpGIF strChartAbsPath
objRS.Close
set objRS = nothing
set objConn = nothing
set objSeries = nothing
set objChart = nothing
set objChartSpace = nothing
%>
</BODY>
</HTML>
[解决办法]
<%
set ChartSpace1=server.CreateObject("OWC.Chart")
ChartSpace1.clear
Dim seriesNames(1)
Dim categories(7)
Dim values(7)
seriesNames(0) = "Satisfaction Data"
categories(0) = "Very Good"
categories(1) = "Good"
categories(2) = "N/A"
categories(3) = "Average"
categories(4) = "No Response"
categories(5) = "Poor"
categories(6) = "Very Poor"
values(0) = 10
values(1) = 22
values(2) = 6
values(3) = 31
values(4) = 5
values(5) = 14
values(6) = 12
Set c = ChartSpace1.Constants
Set cht = ChartSpace1.Charts.Add
ChartSpace1.Charts(0).Type = 1 '13折線,1為柱狀
'chartspace1.Charts(0).SetData chDimCategories, c.chDataLiteral, categories
cht.SetData c.chDimCategories, c.chDataLiteral, categories
ChartSpace1.Charts(0).SeriesCollection(0).Caption = "Sales"
cht.SeriesCollection(0).SetData c.chDimValues, c.chDataLiteral, values
ChartSpace1.Charts(0).SeriesCollection(0).DataLabelsCollection.Add '就这3句,第1句
ChartSpace1.Charts(0).SeriesCollection(0).DataLabelsCollection(0).HasValue =true '第2句
ChartSpace1.Charts(0).SeriesCollection(0).DataLabelsCollection(0).Position=0 '第3句
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 = "#000000"
.Font.Size = 9
End with
set ax= cht.axes(c.chCategoryAxis)
ax.hastitle=true '(显示数值轴标题)
ChartSpace1.ExportPicture server.MapPath(".")&"\1.gif","gif",300,400
Response.Write " <img src= '1.gif ' >"
% >