Graficas PHPlot

Duckds

Bovino maduro
#1
Buenas tardes compañeros pues mi duda es esa si alguien a graficado en PHP he estado buscando y encontre algunas librerias y la que mas me llamo la atencion fue esa por que segun esta mas sencilla y asi pero quisiera si alguien tiene algo de informacion o algun ejemplo para graficar, ya que quisiera hacer una consulta y que el resultado se muestre en una grafica.

Tengo un ejemplo que viene cuando descargas la libreria de PHPlot y se ve que esta sencillo pero no se como poder sacar una consulta o en donde la tengo que poner espero me ayuden les dejo el codigo y el link de donde descargar la libreria

PHP:
<?php
    require_once '../phplot/phplot.php';
    //los datos a graficar siempre van en un array de datos de la siguiente manera: array('etiqueta', valorX, valorY)
    $datos = array(
        array('', 1800,   5), array('', 1810,   7), array('', 1820,  10),
        array('', 1830,  13), array('', 1840,  17), array('', 1850,  23),
        array('', 1860,  31), array('', 1870,  39), array('', 1880,  50),
        array('', 1890,  63), array('', 1900,  76), array('', 1910,  92),
        array('', 1920, 106), array('', 1930, 123), array('', 1940, 132),
        array('', 1950, 151), array('', 1960, 179), array('', 1970, 203),
        array('', 1980, 227), array('', 1990, 249), array('', 2000, 281),
    );
     
    $grafica = new PHPlot(800, 600);              //creamos el objeto de la clase PHPlot de 800px de ancho por 600px de alto
    $grafica->SetImageBorderType('plain');      //le asignamos un borde a la grafica
    $grafica->SetPlotType('lines');                  //el tipo de gráfica será de lineas
    $grafica->SetDataType('data-data');         //lo que va a graficar seran datos en los ejes X y Y
    $grafica->SetDataValues($datos);            //le asignamos el array de datos a la grafica
    $grafica->SetTitle('Grafica de velocidades en el 2007');  //le asignamos un titulo a la grafica
    $grafica->SetPlotAreaWorld(NULL, 0, NULL, NULL);        //Nos aseguramos que el eje Y inicie en 0, los demas ejes seran calculados automaticamente tomando en cuenta los maximos y minimos valores del array
    $grafica->DrawGraph();                          //dibujamos nuestra grafica

?>
y el link de descarga http://sourceforge.net/projects/phplot/


SALUDOS
 
#2
mira el que yo uso aparte de que es gratuito y tiene muy buena documentacion y ademas que puedes graficar en javacript o flash dependiendo de tus necesidades, tambien lo puedes grarficar por medio de query, arreglos etc etc o el estilo que tu manejes es este

http://www.fusioncharts.com/free/ te lo recomiendo aparte que no usa muchos recursos, las graficas son 100% configurables, espero que te sirva
 
#4
esas te consumen mucho recursos del lado del servidor, y creo q podras tener problemas si lo tienes en un hosting gratuito. :) ya es cuestion de cual te sirvan mas
 

Duckds

Bovino maduro
#5
Que tal compañeros bueno gracias por su respuesta y pues vengo a comentarles he estado leyendo mas sobre tal libreria de Phplot y pues la verdad ya le estoy entendiendo un poco mas jejeje pero sigo sin poder hacer consultas en linea bueno les dejo lo ultimo que hice fue hacer la consulta que me pidieron y sacarla en un archivo separado por coma (.csv) y bueno hasta ahi pues ya la libre por lo pronto con la consulta pero se me hace muy tedioso hacer que cada vez que pidan una consulta hacerla pasarla a csv y subirla al servidor bueno de todos modos les dejo lo que utilice para hacer la consulta espero les ayude.


PHP:
<?php
require_once '../phplot/phplot.php';

$gra = new PHPlot(600,400);

//$cuatri=$_GET["cuatrimestre"];
$fic=fopen("resultados.csv", "r");
$fila=0;
$dat=array();
while ($lectura=fgetcsv($fic,10000,",")){
    if ($fila==0){
        $datLey=array_slice($lectura,1);
    }else {
        array_push($dat,$lectura);
    }
    $fila++;
}
fclose($fic);

$gra->SetDataValues($dat);    //Se le pasa el arreglo a la grafica
$gra->SetLineStyles('solid');   //Indica el tipo de la linea
$gra->SetBackgroundColor(array(255,255,255));   //Se setea el fondo de la grafica
$gra->SetPlotType('bars');  //Es el tipo de grafica que se quiere mostrar

//Titulos
$gra->SetTitle('Resultado de las llamadas');    //Titulo general de la grafica
$gra->SetYTitle('Total de llamadas');           //Titulo del eje Y
$gra->SetXTitle('Etapa Seleccionada');          //Titulo del eje X

//Fuente
//$gra->SetTTFPath(getcwd());               //Funcion para obtener las fuentes TTF
//$gra->SetDefaultTTFont("times.ttf");      //Funcion para seleccionar la fuente
//$gra->SetUseTTF(0);                       //Funcion para activar con 1 o desactivar con 0
//$gra->SetFont("title","times.ttf",16);
//$gra->SetFont("x_title","times.ttf",10);
//$gra->SetFont("y_title","times.ttf",8);
$gra->SetFont("legend",5);

//Leyenda
//$gra->SetLegend(array('Alma','Joel','Marlene','Arlette'));  //Se establece la leyenda de la grafica para indicar el gestor al que pertenece cada color
$gra->SetLegend($datLey);
$gra->SetLegendPixels(100,50);                               //Se establece la ubicacion de la leyenda en razon de pixeles

//Escala
$gra->SetPlotAreaWorld(null,0,null,720);    //Se configura la escala 
$gra->SetYTickIncrement(20);                //Se configura el incremento del eje de las Y
$gra->SetDrawYGrid(1);                      //Para indicar si se quieren las lineas del eje Y
$gra->SetDrawXGrid(1);                      //Para indicar si se quieren las lineas del eje X
$gra->SetXTickLabelPos('none');             //Para eliminar los nombres del eje X
//$gra->SetXTickPos('none');                //Para eliminar las divisiones del eje X
//$gra->SetNumXTicks(4);                      //Para asignar el numero de posiciones del eje X

//Colores
//Se crea un arreglo de colores con colores para cada uno de los rotulos
//$colores=array(
//            array(255,0,0),
//            array(0,255,0),
//            array(0,0,255),
//            array(0,0,255),
//            array(0,0,255),
//            array(0,0,255),
//            array(0,0,255),
//            array(255,255,0)
//            );

//$gra->SetDataColors($colores);              //Se asigna el arreglo de colores a la grafica
$gra->SetTitleColor(array(0,0,255));        //Se configura el color de los titulos con un arreglo
$gra->SetLightGridColor(array(200,200,255));  //Se cambia el color de las lineas de fondo de la grafica
$gra->SetTextColor(array(255,0,0));



$gra->DrawGraph();                          //Funcion para dibujar la grafica
?>
Espero les sirva el codigo lo comente para posteriormente poder hacer algunos cambios de cualquier manera sigo leyendo de tal libreria para poder hacer consultas en vivo
 
Arriba