Foros del Web » Programando para Internet » PHP »

graficas con jpgraph con php

Estas en el tema de graficas con jpgraph con php en el foro de PHP en Foros del Web. buenos dias foro tengo un problema quiero graficar datos con jpgraph pero no con datos definidos sino con datos extraidos la tabla numeros y quiero ...
  #1 (permalink)  
Antiguo 03/09/2010, 10:21
Avatar de javierito10  
Fecha de Ingreso: julio-2008
Ubicación: Potosí - Bolivia
Mensajes: 135
Antigüedad: 15 años, 8 meses
Puntos: 1
Exclamación graficas con jpgraph con php

buenos dias foro tengo un problema quiero graficar datos con jpgraph pero no con datos definidos sino con datos extraidos la tabla numeros y quiero saber como se hace la consulta sql.

este es un ejemplo de como graficar pero con datos definidos:
Código PHP:
<?php 
include ("jpgraph/jpgraph.php"); 
include (
"jpgraph/jpgraph_pie.php"); 
include (
"jpgraph/jpgraph_pie3d.php"); 

$data = array(40,60,21,33); 

$graph = new PieGraph(450,200,"auto"); 
$graph->img->SetAntiAliasing(); 
$graph->SetMarginColor('gray'); 
//$graph->SetShadow(); 

// Setup margin and titles 
$graph->title->Set("Ejemplo: Horas de Trabajo"); 

$p1 = new PiePlot3D($data); 
$p1->SetSize(0.35); 
$p1->SetCenter(0.5); 

// Setup slice labels and move them into the plot 
$p1->value->SetFont(FF_FONT1,FS_BOLD); 
$p1->value->SetColor("black"); 
$p1->SetLabelPos(0.2); 

$nombres=array("pepe","luis","miguel","alberto"); 
$p1->SetLegends($nombres); 

// Explode all slices 
$p1->ExplodeAll(); 

$graph->Add($p1); 
$graph->Stroke(); 
?>
como seria la consulta y donde escribirla para graficar con datos extraidos de la tabla?.

Desde ya muchas gracias a todos.
  #2 (permalink)  
Antiguo 03/09/2010, 21:57
Avatar de lair  
Fecha de Ingreso: enero-2009
Ubicación: header('Location: Morelia");
Mensajes: 1.052
Antigüedad: 15 años, 3 meses
Puntos: 46
Respuesta: graficas con jpgraph con php

Hola.

Pues no hay mas, en tu ejemplo hay una variable e nombre data $data = array(40,60,21,33); que es un arreglo y la variable names $nombres=array("pepe","luis","miguel","alberto");, que se corresponde con cada valor en $data, simplemente mete ahi los resultados de tu consulta y ya.
  #3 (permalink)  
Antiguo 03/09/2010, 22:28
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 5 meses
Puntos: 11
Respuesta: graficas con jpgraph con php

Debes llenar el array $data y el array $nombres.

Código PHP:

$data
=array();
$nombres=array();

$sql="select serie, valor from numeros where ....";
$rs=mysql_query($sql);
if(!
mysql_error() & mysql_num_rows($rs)>0)
{
    while(
$fila=mysql_fetch_assoc($rs)
   {
       
$nombres[]=$fila['serie'];
       
$data[]=$fila['valor'];
   }

$data es el arreglo de valores
$nombres es el arreglo de nombres de la serie.
  #4 (permalink)  
Antiguo 08/03/2011, 05:08
 
Fecha de Ingreso: marzo-2011
Mensajes: 11
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: graficas con jpgraph con php

Cita:
Iniciado por claudiovega Ver Mensaje
Debes llenar el array $data y el array $nombres.

Código PHP:

$data
=array();
$nombres=array();

$sql="select serie, valor from numeros where ....";
$rs=mysql_query($sql);
if(!
mysql_error() & mysql_num_rows($rs)>0)
{
    while(
$fila=mysql_fetch_assoc($rs)
   {
       
$nombres[]=$fila['serie'];
       
$data[]=$fila['valor'];
   }

$data es el arreglo de valores
$nombres es el arreglo de nombres de la serie.
Mi codigo

include ("inc/inc/jpgraph.php");
include ("inc/inc/jpgraph_pie.php");
include ("inc/inc/jpgraph_pie3d.php");
include ("conexion.php");
$link=mysql_connect(localhost,$user,$pass); @mysql_select_db($database) or die( "No se pudo conectar");
$data=array();
$nombres=array();

$consulta=mysql_query("SELECT ALIAS, TOTAL FROM remesas");
while($rem=mysql_fetch_array($consulta))
{
echo "entra";
$nombres[]=$rem['ALIAS'];
$data[]=$rem['TOTAL'];
}
/*
$graph = new PieGraph(450,200,"auto");
$graph->img->SetAntiAliasing();
$graph->SetMarginColor('gray');
//$graph->SetShadow();

// Setup margin and titles
$graph->title->Set("Ejemplo: Horas de Trabajo");

$p1 = new PiePlot3D($data);
$p1->SetSize(0.35);
$p1->SetCenter(0.5);

// Setup slice labels and move them into the plot
$p1->value->SetFont(FF_FONT1,FS_BOLD);
$p1->value->SetColor("black");
$p1->SetLabelPos(0.2);

$p1->SetLegends($nombres);

// Explode all slices
$p1->ExplodeAll();

$graph->Add($p1);
$graph->Stroke(); */

Buenas aqui pongo mi codigo cuando intento ver el grafico me da error en el codigo y no se porque, la sentencia SQL la he probado y me funciona, agradeceros la ayuda
  #5 (permalink)  
Antiguo 21/07/2011, 12:33
 
Fecha de Ingreso: noviembre-2007
Mensajes: 25
Antigüedad: 16 años, 5 meses
Puntos: 1
Respuesta: graficas con jpgraph con php

Cita:
Iniciado por kurika Ver Mensaje
Mi codigo

include ("inc/inc/jpgraph.php");
include ("inc/inc/jpgraph_pie.php");
include ("inc/inc/jpgraph_pie3d.php");
include ("conexion.php");
$link=mysql_connect(localhost,$user,$pass); @mysql_select_db($database) or die( "No se pudo conectar");
$data=array();
$nombres=array();

$consulta=mysql_query("SELECT ALIAS, TOTAL FROM remesas");
while($rem=mysql_fetch_array($consulta))
{
echo "entra";
$nombres[]=$rem['ALIAS'];
$data[]=$rem['TOTAL'];
}
/*
$graph = new PieGraph(450,200,"auto");
$graph->img->SetAntiAliasing();
$graph->SetMarginColor('gray');
//$graph->SetShadow();

// Setup margin and titles
$graph->title->Set("Ejemplo: Horas de Trabajo");

$p1 = new PiePlot3D($data);
$p1->SetSize(0.35);
$p1->SetCenter(0.5);

// Setup slice labels and move them into the plot
$p1->value->SetFont(FF_FONT1,FS_BOLD);
$p1->value->SetColor("black");
$p1->SetLabelPos(0.2);

$p1->SetLegends($nombres);

// Explode all slices
$p1->ExplodeAll();

$graph->Add($p1);
$graph->Stroke(); */

Buenas aqui pongo mi codigo cuando intento ver el grafico me da error en el codigo y no se porque, la sentencia SQL la he probado y me funciona, agradeceros la ayuda
QUITALE DONDE DICE : echo "entra";
tal vez eso sea
  #6 (permalink)  
Antiguo 23/01/2012, 03:58
 
Fecha de Ingreso: marzo-2011
Mensajes: 11
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: graficas con jpgraph con php

Buenas a ver expongo mis problema y mi ejemplo:

Con el siguiente codigo consigo que muestre la grafica perfectamente pero hay 2 detalles que no consigo de ninguna manera:

1. Me gustaria poner los valores de las barras encima de ellas, es decir los valores del eje X, encima de la barra ya tengo los del eje Y porque son muy largos pero los del eje X los quiero arriba no encima como los de eje Y.
2. El color de las barras, haga lo que haga me pone el color que le da la gana

$graph = new Graph(800, 450, "auto");
$graph->SetScale("textlin");
$graph->img->SetMargin(60, 20, 20, 50);
$graph->title->Set("Ventas");
//LOS TITULOS DE LOS EJES
//$graph->xaxis->title->Set("Meses" );
//$graph->yaxis->title->Set("Total" );
$graph->xaxis->SetTickLabels($can);
$graph->xaxis->SetLabelSide(SIDE_UP); //como agregado esto agrega la etiqueta en la barra en el caso que se necesite
$graph->xaxis->SetLabelAngle(90);


$barplot =new BarPlot($ydata);


$barplot->SetFillColor("orange");
$barplot->SetLegend('Caja Cable');

$barplot1 =new BarPlot($ydata1);
$barplot1->SetFillColor("azure3:1.5");
$barplot1->SetLegend('Caja Ventas');
$barplot2 =new BarPlot($ydata2);
$barplot2->SetFillColor('#F7FE2E');
$barplot2->SetLegend('Caja SAT');
$barplot3 =new BarPlot($ydata3);
$barplot3->SetFillColor('purple');
$barplot3->SetLegend('Caja Liberaciones');

// Create the grouped bar plot
$gbplot = new GroupBarPlot(array($barplot,$barplot1,$barplot2,$b arplot3));
$gbplot->SetWidth(0.9);



// ...and add it to the graPH
$graph->Add($gbplot);


La recojida de datos desde BD no la pongo porque no tengo ningun problema

Gracias

Etiquetas: jpgraph
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




La zona horaria es GMT -6. Ahora son las 17:50.