Espero que vocês façam bom proveito com este fonte, assim como eu já o fiz.
<%
'================================================================================================================='
Function Gera_Grafico(RSDADOS,titulo,largura,altura,titulo_eixo,char_type)
on error resume next
if isarray(RSDADOS)=true then
Set oChart = CreateObject("OWC10.ChartSpace")
if IsObject(oChart) = false then
response.write "
"
exit function
end if
Set c = oChart.Constants
oChart.Border.Color = c.chColorNone
Redim categories(UBOUND(RSDADOS,2)), Vals(UBOUND(RSDADOS,2))
' críe um array que represente os valores da primeira série.
FOR I=0 TO UBOUND(RSDADOS,2)
Vals(I) = RSDADOS(1,I)
NEXT
' gráfico de coluna com as duas séries e quatro categorias.
' críe um array que represente as categorias, as categorias serão as mesmas para as duas séries.
FOR I=0 TO UBOUND(RSDADOS,2)
legenda=RSDADOS(0,I)
categories(I) = legenda&" : Total("&Vals(I)&")"
NEXT
With oChart
' adicionando um objeto do gráfico.
.Charts.Add
' adicionando o tipo do gráfico.
select case cInt(char_type)
case 0
.Charts(0).Type = oChart.Constants.chChartTypePie
case 1
.Charts(0).Type = oChart.Constants.chChartTypePie3d
case 2
.Charts(0).Type = oChart.Constants.chChartTypeColumnClustered
case 3
.Charts(0).Type = oChart.Constants.chChartTypeColumn3d
case 4
.Charts(0).Type = oChart.Constants.chChartTypeArea
case 5
.Charts(0).Type = oChart.Constants.chChartTypeBarClustered
case 6
.Charts(0).Type = oChart.Constants.chChartTypeBar3D
case 7
.Charts(0).Type = oChart.Constants.chChartTypeArea3D
case 8
.Charts(0).Type = oChart.Constants.chChartTypeLine
case 9
.Charts(0).Type = oChart.Constants.chChartTypeLineMarkers
end select
' adicionando a primeira série ao gráfico.
.Charts(0).SeriesCollection.Add
' ajustando o subtítulo da série (o texto da legenda).
.Charts(0).SeriesCollection(0).Caption = titulo_eixo
' adicionando as categorias e os valores da primeira série.
.Charts(0).SeriesCollection(0).SetData c.chDimCategories, c.chDataLiteral, categories
.Charts(0).SeriesCollection(0).SetData c.chDimValues, c.chDataLiteral, Vals
.Charts(0).HasLegend = false
.Charts(0).HasTitle = false
End With
Response.Expires = 0
Response.Buffer = true
Response.Clear
Response.ContentType = "image/png"
'ajustando o tamanho do gráfico (figura).
Response.BinaryWrite oChart.GetPicture("png",largura, altura)
end if
end function
t = request("t")
th = request("th")
w = request("w")
h = request("h")
id = request("id")
o = request("o")
Call Gera_Grafico(Session(o),t,w,h,th,id)%>
Nenhum comentário:
Postar um comentário