viernes, 13 de febrero de 2015

GRAFICOS ESTADISTICOS EN PHP CON JPGRAPH

Buen día amig@s...

En esta oportunidad les traigo un proyecto (se encuentra al final de la publicación) donde muestro como crear gráficos estadísticos, ya sea de líneas, barras o pastel, en php utilizando la librería jpgraph. A continuación detallo como crear el proyecto, integrar y usar la librería jpgraph:
  • Creamos un proyecto php en un servidor local o remoto, en mi caso lo hice en el servidor local xampp y lo nombre graficar.
  • Dentro de la carpeta graficar se crean los siguientes archivos:
  • /clases/graficos.php: Creamos el archivo graficos.php dentro de la carpeta clases pues este archivo es una clase y queremos mantener un orden. En el archivo graficos.php incluimos, mediante require_once, los archivos con los tipos de gráficos que vamos a usar y que vienen en la librería jpgraph, en este caso vamos a graficar líneas, barras y el pastel, para ello incluimos los siguientes archivos:
    // Archivo principal
    require_once ('./jpgraph/src/jpgraph.php');
    // Para graficar las líneas
    require_once ('./jpgraph/src/jpgraph_line.php');
    // Para graficar las barras
    require_once ('./jpgraph/src/jpgraph_bar.php');
    // Para grafiar el pastel
    require_once ('./jpgraph/src/jpgraph_pie.php');
    // Para grafiar el pastel
    require_once ('./jpgraph/src/jpgraph_pie3d.php');
    Gráficos Estadísticos en Php con Jpgraph - Imagen 1

    Además, en este archivo se implementan los métodos que nos van a permitir hacer los gráficos estadísticos; estos métodos son:
    public function graficar_lineas() {}  //Grafica líneas
    public function graficar_barras() {} //Grafica barras
    public function graficar_pastel() {} // Grafica el pastel
    Gráficos Estadísticos en Php con Jpgraph - Imagen 2

    Gráficos Estadísticos en Php con Jpgraph - Imagen 3

    Gráficos Estadísticos en Php con Jpgraph - Imagen 4

    /images/btn.png: Este archivo es la imagen de un botón, si desean crean uno con el nombre btn.png o usan el que viene en el comprimido, como ven este archivo está dentro de la carpeta images.

    /vista_graficos.php: En este archivo incluimos, mediante require_once, el archivo graficos.php, creamos e instanciamos una variable de tipo "graficos" para poder graficar lo deseado de acuerdo a la petición que llega del archivo index.php. Aquí se invocan los métodos del archivo graficos.php dependiendo de lo que se solicita graficar, ya sea las líneas, las barras o el pastel.
    Gráficos Estadísticos en Php con Jpgraph - Imagen 5

    /index.php: Este es nuestro archivo principal aquí tenemos 3 botones, que al dar clic en cualquiera de ellos nos muestra un gráfico estadístico, el botón 1 nos grafica líneas, el botón 2 nos grafica barras y el botón 3 nos grafica el pastel, cabe indicar que el gráfico se carga en una ventana emergente con ayuda de unas líneas de código javascript.
    Gráficos Estadísticos en Php con Jpgraph - Imagen 6

  • Para integrar jpgraph, lo descargamos del siguiente enlace: jpgraph.
  • Descomprimimos lo descargado y a la carpeta creada le colocamos el nombre jpgraph.
  • A continuación ingresamos a nuestra carpeta jpgraph y eliminamos la carpeta docs, esto para reducir el peso de la carpeta jpgraph, luego copiamos la carpeta jpgraph a nuestro proyecto, en mi caso lo copio a la carpeta graficar.
Gráficos Estadísticos en Php con Jpgraph - Imagen 7

Siguiendo todos estos puntos ya podemos usar jpgraph en nuestro proyecto y ver los gráficos estadísticos que se generan, a continuación imágenes de los gráficos estadísticos creados.

Gráficos Estadísticos en Php con Jpgraph - Imagen 8

Gráficos Estadísticos en Php con Jpgraph - Imagen 9

Gráficos Estadísticos en Php con Jpgraph - Imagen 10

Bueno así finalizamos con esta publicación, adjunto les dejo el proyecto para que usen y/o modifiquen, saludos y hasta otra oportunidad.

 Gráficos Estadísticos Download

6 comentarios:

  1. Hola que tal una pregunta tiene algun costo de licencia el Jpgraph para poder usarlo

    ResponderEliminar
    Respuestas
    1. Que tal, Jpgraph si cuenta con una licencia, esta se debe adquirir cuando se va a utilizar Jpgraph en sistemas con fines comerciales; en caso de utilizarlo con fines didácticos o educativos no sería necesario. Para más detalle te dejo el enlace donde se aclara este tema: www.jpgraph.net/pro. Saludos.

      Eliminar
  2. Excelente aporte!!! :)

    ResponderEliminar
  3. Buenos días. Excelente aporte... Quisiera saber cómo hago para que cada barra tenga un color diferente automáticamente

    ResponderEliminar
    Respuestas
    1. Que tal, en las barras, tienes que trabajar con SetFillColor() a este método le asignas el color que desees dependiendo de tus condiciones para que sea automáticamente. Saludos.

      Eliminar