PHP/SWF Charts, Gráficos estadisticos en PHP con Flash

17 12 2007

Recientemente con un compañero de universidad, me he visto en la necesidad de realizar ciertos trabajos en PHP que requerian que graficaramos ciertos datos estadisticos. Pues bien, luego de buscar un poco nos hemos encontrado con esta excelente utilidad, se trata de PHP/SWF Charts una muy completa libreria que nos permite realizar una gran cantidad de graficos de muy buena calidad.

Podemos realizar una gran variedad de graficos, desde los clasicos tipo columnas y tortas hasta graficos mas sofisticados en 3D, recientemente se ha implementado la opcion de realizar graficos polares y compuestos.

PHP-SWF Charts

Para poder usar esta libreria, solo es necesario que el navegador web en el cual se pretenden visualizar los graficos tenga instalado como minimo el plugin de Flash Player 6, además por supuesto que nuestro servidor web soporte PHP.

Esta libreria, puede ser descargada de forma gratuita desde la pagina web del fabricante, pero de esta forma no tendremos ningún tipo de soporte tecnico, además de otras pequeñas limitaciones que si queremos eliminarlas deberiamos obtener una licencia a un costo de US$45.

Para finalizar, comentarles que en el sitio web podemos encontrar un tutorial y una extensa ayuda que nos permitiran comprender de forma mas o menos rapida el funcionamiento de la utilidad.

Sin embargo, y debido a que ultimamente la he usado mucho, a aquellas personas que necesiten alguna colaboración y pueda de mi parte brindarles alguna ayuda, con gusto lo estaré haciendo.


Acciones

Información

20 respuestas a “PHP/SWF Charts, Gráficos estadisticos en PHP con Flash”

18 12 2007
Edwin (11:31:25) :

Estas graficas se ven cheveres y en realidad estoy tratando de generar datos estadisticos de una base de datos, te agradezco si me ayudas para poder trabajar con esta grafica ya la descargue pero no se como implementarla en mi proyecto de grado te agradezco de todo corazon si me ayudas es que tengo que entregar este proyecto dentro de poco para poder graduarme, estoy trabajando con php dreanweaver ojala me puedas ayudar gracias.

18 12 2007
arturoweb (13:01:47) :

@Edwin: Por supuesto que puedo ayudarte, pero la verdad te recomiendo que primero ingreses a la pagina web del fabricante y revises la ayuda y los tutoriales que hay para la creacion de las diferentes tipos de graficas, incluso hay un pequeño ejemplo donde explican como hacer cuando los datos de origen de las graficas se encuentran en una base de datos mysql (el cual tambien era mi caso).
Entonces, por ahora te digo que revises los tutoriales y cuando tengas una duda mas puntual no dudes en comentar y te ayudare por e-mail o colocaré otra entrada en el blog resolviendo tu duda para que pueda servile a otras personas mas adelante.
Saludos!

24 12 2007
Lewis (16:35:43) :

Hola, me parece interesante todo esto, es posible aplicarlo a una base de datos de acces anivel de pc local?
gracias

5 01 2008
arturoweb (17:10:24) :

Por supuesto Lewis, siempre y cuando sepas como conectarte a la base de datos Acces mediante PHP y como extraer los datos de ella. Para esto te recomiendo busques en la red un tutorial de como montar un servidor local con PHP y Acces. Además tambien busca un tutorial para conectarte a una base de datos acces con PHP. Luego solo te falta leer los tutoriales de PHP/SWF Charts que se encuentran en la pagina web del fabricante.
Saludos!

7 02 2008
Hernando (19:32:48) :

Tengo un problema, baje las librerias php y trate de usar el ejemplo y al tratar de ver los ejemplos en el navegador solo me aparece la pelicula flash tratando de descargarse y solo eso, nunca logro ver el gráfico o algo que se le parezca, me gustaria saber que debo tener instalado y configurado en mi equipo, tengo el xp con sp2 y el iis funcionando.
PD.: Soy nuevo en el tema de la programacion web pero necesito hacer una pagian que tome datos de una bd en mysql y los represente en un gráfico. Gracias por cualquier ayuda

Hernando

9 02 2008
arturoweb (19:38:21) :

Ok … lo primero que debes tener en cuenta (por si no lo sabias) es que el IIS no viene configurado para correr paginas PHP.
Te recomiendo que primero verifiques que tu servidor web, si esta configurado para correr scripts PHP, si no es así entonces te recomiendo que hagas los cambios necesarios o que instales el servidor Apache.
Por lo pronto es lo unico en que puedo ayudarte, no dudes en escribirme si se te presenta otro inconveniente.
El siguiente enlace te puede ayudar a configurar tu IIS:
http://www.desarrolloweb.com/faq/12.php
Saludos!

21 02 2008
sanimar (13:23:20) :

hola al tratar de utulizar me genera este error como puede solucionarlo

21 02 2008
sanimar (13:28:46) :

perdon el error es
Fatal error: Cannot redeclare insertchart() (previously declared in C:\AppServ\www\SGCnet\Estadistica\charts.php:14) in C:\AppServ\www\SGCnet\Estadistica\charts.php on line 33

21 02 2008
arturoweb (22:41:00) :

Hola sanimar, lo primero que debes saber es que la funcion es InsertChart(”parametros” ;) y no insertchart() (PHP es sensible a mayusculas y minusculas). Creo por el momento que ese es tu error, estas llamando mal a la funcion InsertChart(). La cual tiene los siguientes parametros:
string InsertChart ( string flash_file, string library_path, string php_source [, int width [, int height [, string color [, boolean transparent ]]]]

flash_file: la direccion absoluta o relativa del archivo charts.swf
library_path: la direccion absoluta o relativa del folder donde se encuentra la libreria charts_library
php_source:La direccion absoluta o relativa donde se encuentra el archivo PHP que envia los datos para el grafico que deseas mejorar.
width y height: El ancho y alto que quieres que tenga el grafico que estas generando. Por defecto es 400 x 250 pixeles.
color: El color de fondo del grafico. Debe ser un string que represente el color en valor hexadecimal.
transparence: Un booleano (true/false) que indica si el fondo del grafico es trasparente. El valor por defecto es false.
Ejemplo:
echo InsertChart ( “charts.swf”, “/libraries/charts_library”, “sample.php”, 600, 400, “8844FF”, false );

Espero eso pueda ayudarte, sino no dudes en escribirme nuevamente. Deberias darme mas datos para poder determinar el porque del error, pero inicialmente podria decirte que estas llamando de forma equivocada a la funcion InsertChart().

Mas info: http://www.maani.us/charts/index.php?menu=Reference&submenu=canvas_bg

Saludos!

8 04 2008
JMPR (17:38:23) :

hola quiciera saber que datos debe mandar sample.php para que cuando sea llamado desde aca reciva tenga los datos pertinentes para que haga la grafica, pienso que deberian ser los datos obtenidos de la db pero como deberia retornarlos, osea, como es seria el procedimiento mas adecuado?

9 04 2008
arturoweb (08:29:11) :

Hola JMPR, el archivo sample.php contiene los datos de configuracion del grafico, en dicho archivo lo que hacemos es llenar un vector cuyo nombre es $chart[] con las preferencias de nuestro grafico. Te recomiendo que vayas a la pagina del fabricante y te ubiques en la seccion “Gallery”, desde alli al hacer click sobre cada uno de los graficos, te muestra el archivo sample.php asociado a ese grafico. El siguiente enlace: http://www.maani.us/charts/source.php?page=Gallery_Column_1.php es el correspondiente archivo para un grafico tipo barras, te recomiendo que lo estudies y lo acomodes a tus necesidades.
Saludos!

10 04 2008
zarate (16:54:51) :

hola tebgo un probelma como puedo generar garficas en liena

10 04 2008
arturoweb (22:31:16) :

Hola zarate, la verdad no entiendo muy bien tu pregunta. :S
Si lo que quieres hacer graficos de tipo linea (?) te recomendaria que miraras la pagina del fabricante donde hay una excelente ayuda para aprender a usar esta herramienta.
http://www.maani.us/charts/index.php?menu=Gallery
Alli seleccionas el submenu “linea” y luego puedes hacer clic en cada uno de los dos graficos de ejemplo para ver su codigo fuente.
Saludos!

20 04 2008
erick sanchez (13:10:49) :

hola me interesa tu publicacion pero no entiendo muy bien como ejecutarlo y mucho menos obtener los datos y mostrarlos dentro del archivo flash ! ya que en muchos de esos ejemplos solo me salen texto(datos) - gracias

22 04 2008
Maderita (20:25:48) :

Hola, he bajado el ejemplo y lo subi a mi server, y lo llamo desde una pagina php como encontre en el ejmplño y nada :s
despues d baja los archivos lo llame desde aqui..

pero igual no carga :s
help me

23 04 2008
arturoweb (08:33:31) :

Hola Maderita, deberias darme mas detalles de lo que estas haciendo y tal vez así pueda ayudarte. No me queda muy claro el procedimiento que estas siguiendo. Si sigues correctamente los tutoriales de la pagina web del fabricante no deberias tener problemas.
Saludos!

7 05 2008
Andres (16:51:48) :

Arturo… estoy trabajando con PHP/SWF y tengo una duda talvez puedas solucionarla… estoy generando un indicador con la libreria, este a su vez realiza una conexion con base de datos… mi primer ? es como puedo poner un titulo general a la grafica… ? como puedo cambiar el tamaño de letra de las graficas en el eje horizontal si estoy utilizando graficos tipo barra… muchas gracias por la colaboracion

7 05 2008
arturoweb (17:20:33) :

Hola Andres:
1. Para el titulo puedes usar $chart [ 'draw' ] con el que puedes agregar a tu grafico texto, lineas, circulos, etc. Visita el siguiente enlace:
http://www.maani.us/charts/index.php?menu=Reference&submenu=draw

2. El segundo inconveniente lo puedes solucionar con: $chart['axis_category']. Visita el siguiente enlace:
http://www.maani.us/charts/index.php?menu=Reference&submenu=axis_category

Espero lo anterior te pueda servir, cualquier otra duda estaré atento.

Saludos!

9 05 2008
Andres (16:01:02) :

Arturo muchas gracias por la informacion… ahora me surge otra duda … deseo llamar la pelicula flash desde otro archivo flash… es posible hacerlo… como paso los parametros para graficar la imagen.

9 05 2008
arturoweb (16:13:58) :

Hola nuevamente Andrés.
Debido a que los graficos son generados mediante scripts PHP, no es posible hacer lo que deseas, porque no puedes incluir codigo PHP dentro de un archivo FLASH. (Por lo menos yo nunca lo he visto ni hecho, si logras hacerlo avisame pues seria algo bastante interesante, aunque estoy 99.99% seguro que no es posible hacerlo).

Saludos, cualquier duda avisa!

Deje un comentario

Puedes usar estas etiquetas : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>