Foros del Web » Programando para Internet » ASP Clásico »

Generacion de graficos con asp

Estas en el tema de Generacion de graficos con asp en el foro de ASP Clásico en Foros del Web. Hola a todos quiero saber si conocen alguna forma de generar graficos del tipo estadisticos con datos provenientes de una base de datos... Conocen si ...
  #1 (permalink)  
Antiguo 06/07/2005, 16:47
 
Fecha de Ingreso: marzo-2005
Mensajes: 13
Antigüedad: 19 años
Puntos: 0
Generacion de graficos con asp

Hola a todos quiero saber si conocen alguna forma de generar graficos del tipo estadisticos con datos provenientes de una base de datos... Conocen si existe una forma de generar archivos GIF o JPG al vuelo usando ASP?
Me gustaria saber si se pude generar tambien PDF y archivos de flash...

GRacias
  #2 (permalink)  
Antiguo 06/07/2005, 17:02
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años
Puntos: 9
A través de ASP solo, sin utilizar componentes externos, la forma en la que comunmente se trabaja es tener un archivo GIF en forma de barra, y a esa barra generarle una altura dinamicamente con los datos que extraes de la base de datos. Es la mejor forma que he encontrado para hacer con ASP solo. Después tenés componentes como el OWC (Office Web Components), que genera gráficos al mismo estilo que Excel. No te puedo mencionar más debido a que encontré poca documentación detallada al respecto. Lo que yo estoy haciendo en estos momentos (pero todavía no logro armar bien la base de datos para extraer los datos de forma eficiente) es tener una página ASPX que se encarga de generar los gráficos, le pongo con ContentType que me devuelva una imagen, y luego en la página ASP que quiero que me muestre el grafico pongo una etiqueta <IMG>, y en el atributo SRC la url de esa página ASPX. Esa es otra forma que puede lograrse si querés usar código propio, sin depender de componentes externos.
Alguien más seguramente te va a brindar otras alternativas.
Saludos!.
__________________
Add, never Remove
  #3 (permalink)  
Antiguo 07/07/2005, 07:14
 
Fecha de Ingreso: junio-2005
Mensajes: 114
Antigüedad: 18 años, 9 meses
Puntos: 0
Yo utilicé una clase muy buena que bajé de planet-source-code.com. Te paso el comentario.
Permite gráfico de barras y de tortas, y yo le hice una personalizacion para poder graficar también líneas. No sé como se adjunta un archivo, si ya no está más enviame un mensaje privado con un mail y te la envío .
Slds. Edum

Title: ASPCanvas 2.0.2
Description: Version 2.0.2 of ASPCanvas draws GIF files directly from script without using server-side components. It includes a suite of drawing functions as well as support for rendering barcodes. This new version draws images 15 times faster than its predecessor. New version includes graphing and charting add-ons.
This file came from Planet-Source-Code.com...the home millions of lines of source code
You can view comments on this code/and or vote on it at: http://www.Planet-Source-Code.com/vb...=8395&lngWId=4
  #4 (permalink)  
Antiguo 07/07/2005, 10:24
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años
Puntos: 9
Simplemente... impresionante!, Muy bueno, gracias por el link.
Saludos!.
__________________
Add, never Remove
  #5 (permalink)  
Antiguo 07/07/2005, 14:06
Avatar de El_Metallick  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago, Chile
Mensajes: 1.718
Antigüedad: 21 años, 5 meses
Puntos: 16
muchas gracias magnifico script... saludos
__________________
Haz la guerra en la cama y el amor donde se te de la gana...
El tiempo es el mejor maestro, lo único malo es que te mata...¡¡Aprovecha tu tiempo!!
  #6 (permalink)  
Antiguo 07/07/2005, 14:25
 
Fecha de Ingreso: julio-2005
Ubicación: Santiago de Compostela
Mensajes: 80
Antigüedad: 18 años, 9 meses
Puntos: 0
Ese componente me encanta



<%@ language="vbscript" %>
<%
'Instancia del Objeto ChartDirector
Set cd = CreateObject("ChartDirector.API")

'Informa los datos para el gráfico
data = Array(250, 180, 150)

'Informa la etiquetas
labels = Array("Locaweb", "Locamail", "Locavoz")

'Cria una imagene con tamaño de 280 x 240 pixels
Set c = cd.PieChart(280, 240)

'Ajusta localicacion del gráfico (140, 120) y su tamaño en 80 pixels
Call c.setPieSize(140, 120, 80)

'Muestre el gráfico en 3D
Call c.set3D()

'Muestra un titulo al grafico
Call c.addTitle("Locaweb")

'Ajusta la transparencia
Call c.setColors(cd.transparentPalette)

'Ajusta los datos y el grafico
Call c.setData(data, labels)

'Separa la ultima ultima parte
Call c.setExplode(2)

'Exibe el gráfico en el browser
Response.ContentType = "image/png"
Response.BinaryWrite c.makeChart2(cd.PNG)

'elimina el objeto c
Set c = nothing

'elimina el Objeto ChartDirector
Set cd = nothing
%>
  #7 (permalink)  
Antiguo 07/07/2005, 17:34
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años
Puntos: 9
Intenté usar el componente ChartDirector, pero me salta el error en la linea en la que creo el objeto:

" El componente ActiveX no puede crear el objeto: 'ChartDirector.API' "

Por que puede ser? alguien sabe como solucionarlo?
Muchas gracias de antemano.
Saludos!.
__________________
Add, never Remove
  #8 (permalink)  
Antiguo 08/07/2005, 02:35
 
Fecha de Ingreso: julio-2005
Ubicación: Santiago de Compostela
Mensajes: 80
Antigüedad: 18 años, 9 meses
Puntos: 0
Tienes el componente instalado en el servidor?
  #9 (permalink)  
Antiguo 08/07/2005, 02:51
 
Fecha de Ingreso: abril-2005
Ubicación: Santiago Compostela
Mensajes: 213
Antigüedad: 19 años
Puntos: 0
con ese componente se pueden hacer graficos de tipo de lineas.
  #10 (permalink)  
Antiguo 08/07/2005, 06:50
 
Fecha de Ingreso: julio-2005
Ubicación: Santiago de Compostela
Mensajes: 80
Antigüedad: 18 años, 9 meses
Puntos: 0
Se puede hacer diversos tipo de grafico con ese componente ejemplos:



















y muchos otros
un saludo
  #11 (permalink)  
Antiguo 08/07/2005, 06:56
 
Fecha de Ingreso: abril-2005
Ubicación: Santiago Compostela
Mensajes: 213
Antigüedad: 19 años
Puntos: 0
pregunta de novato, esos datos se pueden sacar de una base de datos??
donde se puede bajar el programa y tienes documentacion del programa.
un saludo
  #12 (permalink)  
Antiguo 08/07/2005, 07:18
 
Fecha de Ingreso: julio-2005
Ubicación: Santiago de Compostela
Mensajes: 80
Antigüedad: 18 años, 9 meses
Puntos: 0
Si que se puede.
Busca por internet que seguro que encuentras un manual dese componente.

Un ejemplo con db

Código HTML:
Página Database01.asp

Esta página exibe um formulário para que possa ser selecionado o ano para gerar-se dinamicamente a imagem do gráfico

<html>
<body>
<form action="<%=Request("SCRIPT_NAME")%>">
Selecione o ano da consulta 
<select name="year">
<option value="1990">1990
<option value="1991">1991
<option value="1992">1992
<option value="1993">1993
<option value="1994">1994
<option value="1995">1995
<option value="1996">1996
<option value="1997">1997
<option value="1998">1998
<option value="1999">1999
<option value="2000">2000
<option value="2001">2001
</select>
<input type="submit" value="OK">
</form>

<%
SelectedYear = Request("year")
if SelectedYear = "" Then 
SelectedYear = 2001
end if
%>

<SCRIPT>
//make sure the select box displays the current selected year.
document.forms[0].year.selectedIndex = <%=SelectedYear - 1990%>;
</SCRIPT>

<img src="database02.asp?year=<%=SelectedYear%>">

</body>
</html>

Página Database02.asp

Esta página genera la imagene del gráfico y hace la consulta en el banco de datos

<%@ language="vbscript" %>
<%

Set cd = CreateObject("ChartDirector.API")

SelectedYear = Request("year")
if SelectedYear = "" Then SelectedYear = 2001

SQL = "Select Month(TimeStamp) - 1 As ArrayIndex, " & _
"Software, Hardware, Services " & _
"From Revenue Where Year(TimeStamp)=" & SelectedYear


Set rs = CreateObject("ADODB.RecordSet")
Call rs.Open(SQL, "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=e:\home\login\dados\sample.mdb")
Set dbTable = cd.DBTable(rs, "ArrayIndex", 12)
rs.Close()


'(0xffffc0) background and 2 pixel 3D border
Set c = cd.XYChart(420, 240, &Hffffc0, &Hffffc0, 2)

Call c.setPlotArea(70, 50, 320, 150, &Hffffff, &Hffffff, &Hc0c0c0, &Hc0c0c0)


Call c.addTitle("Locaweb - Estatisticas de " & SelectedYear, "timesbi.ttf" _
).setBackground(&Hffff00)

Call c.addLegend(70, 30, 0, "", 8).setBackground(cd.Transparent)

Set layer = c.addBarLayer2(cd.Stack)
Call layer.addDataSet(dbTable.getCol(1), -1, "Locaweb")
Call layer.addDataSet(dbTable.getCol(2), -1, "Locamail")
Call layer.addDataSet(dbTable.getCol(3), -1, "Locavoz")
Call layer.setBorderColor(cd.Transparent, 1)


labels = Array("Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", _
"Set", "Out", "Nov", "Dez")
Call c.xAxis().setLabels(labels)

Call c.xAxis().setWidth(2)


Call c.yAxis().setTitle("Crescimento")


Call c.yAxis().setWidth(2)


Response.ContentType = "image/png"
Response.BinaryWrite c.makeChart2(cd.PNG)


rs.close
Set rs = nothing


Set c = nothing

Set cd = nothing
%>
puedes baja la bd Aqui

un saludo
  #13 (permalink)  
Antiguo 08/07/2005, 10:41
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años
Puntos: 9
La prueba la hice en local, de donde bajo el componente para instalarlo?
__________________
Add, never Remove
  #14 (permalink)  
Antiguo 08/07/2005, 12:46
 
Fecha de Ingreso: julio-2005
Ubicación: Santiago de Compostela
Mensajes: 80
Antigüedad: 18 años, 9 meses
Puntos: 0
http://www.advsofteng.com/download.html
  #15 (permalink)  
Antiguo 08/07/2005, 13:07
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 2 meses
Puntos: 146
Excelente el componente.....solo un apunte:

Cita:
Después tenés componentes como el OWC (Office Web Components), que genera gráficos al mismo estilo que Excel.
No "debes" usar ese componente en Internet por que se infringen leyes de licencias, es solo para intranets que tengan la licencia del office para sus clientes.
  #16 (permalink)  
Antiguo 08/07/2005, 15:09
 
Fecha de Ingreso: julio-2005
Ubicación: Santiago de Compostela
Mensajes: 80
Antigüedad: 18 años, 9 meses
Puntos: 0
Tambien hay otros componentes que trabaja muy bien con grafico como el DundasPieChart.

http://www.dundas.com/products/chart...px?Section=new
  #17 (permalink)  
Antiguo 08/07/2005, 16:21
Avatar de El_Metallick  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago, Chile
Mensajes: 1.718
Antigüedad: 21 años, 5 meses
Puntos: 16
Gracias Elbinner.... saludos
__________________
Haz la guerra en la cama y el amor donde se te de la gana...
El tiempo es el mejor maestro, lo único malo es que te mata...¡¡Aprovecha tu tiempo!!
  #18 (permalink)  
Antiguo 08/07/2005, 17:01
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años
Puntos: 9
Buen comentario Myakire, sinceramente no sabía el tema de las licencias, menos mal que lo acotaste. Excelente el componente la verdad, espero poder utilizarlo también.
Saludos!.
__________________
Add, never Remove
  #19 (permalink)  
Antiguo 08/07/2005, 18:02
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años
Puntos: 9
Baje el componente de la pagina, desde el mirror, y me dice que no se puede instalar debido a que el componente esta corrupto. Alguien pudo bajarlo?, se podrá bajar de algún otro link?
__________________
Add, never Remove
  #20 (permalink)  
Antiguo 09/07/2005, 14:56
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años
Puntos: 9
Bueno instale el componente en C:\Archivos de programa, cuando intenté ejecutar el código que se posteó acá, me salieron un montón de caracteres ilegibles. Alguien lo probó?, que puede estar mal?
__________________
Add, never Remove
  #21 (permalink)  
Antiguo 09/07/2005, 15:09
 
Fecha de Ingreso: julio-2005
Ubicación: Santiago de Compostela
Mensajes: 80
Antigüedad: 18 años, 9 meses
Puntos: 0
Lo use algunas veces en el servidor que tengo contratado y me funciona sin problema. Cual codigo usaste? el primero? si es el primero no tengo nin idea lo que puede ser

o mejor si, estas probando solo el codigo o estas usando html junto?
  #22 (permalink)  
Antiguo 09/07/2005, 15:23
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años
Puntos: 9
Lo que hice fue copiar y pegar exactamente el mismo código que se posteó acá. Me pregunto si las DLL del subdirectorio "lib" necesitan estar registradas? necesitan estar en la misma carpeta de mi aplicación? o solamente con instalar el componente en cualquier subdirectorio en teoría esto debería funcionar?
Saludos!.
__________________
Add, never Remove
  #23 (permalink)  
Antiguo 09/07/2005, 16:04
 
Fecha de Ingreso: julio-2005
Ubicación: Santiago de Compostela
Mensajes: 80
Antigüedad: 18 años, 9 meses
Puntos: 0
Normalmente tienes que registrar el componente en windows. Imagino que ya tengas instalado alguna ves componentes como aspjpeg... tienes que hacer lo mismo (creo)

En la pagina no pone como instalar?
saludos
  #24 (permalink)  
Antiguo 15/11/2007, 13:44
 
Fecha de Ingreso: noviembre-2007
Mensajes: 4
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: Generacion de graficos con asp

Hola necesito que alguien me ayude urgente, estoy desarrolando una aplicacion en asp que tiene que graficar datos de access, me sugirieron usar ChartDirector asi que lo baje de la pagina, tengo la carpeta que contiene los archivos dendtro del directorio de la aplicacion.

Cuando intento ejecutar alguna pagina y se crea el objeto
Set cd = CreateObject("ChartDirector.API")

Da el siguiente error

Script error detected at line 3.
Source line: Set cd = CreateObject("ChartDirector.API")
Description: El componente ActiveX no puede crear el objeto: 'ChartDirector.API'

por favor ayudenme a solucionar este error que asi podre continuar con mi aplicacion

Gracias
  #25 (permalink)  
Antiguo 15/11/2007, 18:22
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 17 años, 1 mes
Puntos: 88
Re: Generacion de graficos con asp

registraste la variable?

REGSVR32 tuactivex.dll

????
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
  #26 (permalink)  
Antiguo 27/11/2007, 10:08
 
Fecha de Ingreso: noviembre-2007
Mensajes: 4
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: Generacion de graficos con asp

No la he registrado, no sabia que tenia que hacerlo, como lo hago? por favor ayudame estoy trancada y no puedo continuar... explicame paso a paso es que no soy experta en asp

Gracias
  #27 (permalink)  
Antiguo 27/11/2007, 11:58
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 17 años, 1 mes
Puntos: 88
Re: Generacion de graficos con asp

retomo nuevamente previo POST
Cita:
registraste la variable?

REGSVR32 tuactivex.dll

????
mas informacion, ESTA, o ESTA OTRA, o en GOOGLE, e incluso dentro de nuestro FORO

__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
  #28 (permalink)  
Antiguo 27/11/2007, 14:33
 
Fecha de Ingreso: noviembre-2007
Mensajes: 4
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: Generacion de graficos con asp

ya lo registre no me sale el error sin embargo no me muestra la imagen, que sera?... Muchas Gracias por tu respuesta

Última edición por Mafervzla01; 27/11/2007 a las 14:45
  #29 (permalink)  
Antiguo 10/06/2011, 10:03
 
Fecha de Ingreso: junio-2011
Mensajes: 1
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Generacion de graficos con asp

Muchas gracias Elbrinner el código me sirvió un monton :D
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 03:43.