读书人

急 asp中如何用owc画图啊

发布时间: 2012-04-06 12:22:24 作者: rapoo

急!急!急! 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 ' >"


% >

读书人网 >ASP

热点推荐