Foros del Web » Programando para Internet » PHP »

Realizacion de graficos (barras) en PHP

Estas en el tema de Realizacion de graficos (barras) en PHP en el foro de PHP en Foros del Web. Hola a todos.. como están?? Estoy haciendo en mi site una parte de estadísticas, y quisiera que los resultados que me arrojara se muestren en ...
  #1 (permalink)  
Antiguo 16/08/2006, 10:33
 
Fecha de Ingreso: octubre-2005
Mensajes: 69
Antigüedad: 12 años, 1 mes
Puntos: 0
Exclamación Realizacion de graficos (barras) en PHP

Hola a todos.. como están??

Estoy haciendo en mi site una parte de estadísticas, y quisiera que los resultados que me arrojara se muestren en una grafica (bien sea barra, torta, etc..).. como realizo esto?? hay alguna función q me permita realizarlo???

En la Internet encontré un programa que te permite realizarlo que se llama ChartDirector (http://www.advsofteng.com/), pero a la hora de colocarlo en el apache y accederlo no me muestra la grafica.. por lo que trato de buscar otra alternativa..

Muchas gracias…
__________________
Ana Martins
  #2 (permalink)  
Antiguo 16/08/2006, 10:40
Avatar de skatomundo  
Fecha de Ingreso: junio-2002
Ubicación: Santiago - CL
Mensajes: 2.532
Antigüedad: 15 años, 5 meses
Puntos: 125
Enlaces:

//Buscar en:
http://www.forosdelweb.com/showthread.php?t=101546

//Jgraph
http://www.desarrolloweb.com/articulos/1987.php
http://www.aditus.nu/jpgraph/
  #3 (permalink)  
Antiguo 16/08/2006, 10:42
Avatar de B**
B**
 
Fecha de Ingreso: enero-2006
Ubicación: Monterrey,Mexico
Mensajes: 952
Antigüedad: 11 años, 10 meses
Puntos: 3
Graficar con JpGraph
__________________
-URL= Go PHP5.
-Age=22.
-Learning=PHP,J2EE,Struts,MAMBO,C++,JSON,AJAX,XHTML ,CSS.
  #4 (permalink)  
Antiguo 16/08/2006, 13:41
 
Fecha de Ingreso: octubre-2005
Mensajes: 69
Antigüedad: 12 años, 1 mes
Puntos: 0
Estuve viendo el como graficar con JpGraph. Lo que no entiendo es como agregarla al php.
__________________
Ana Martins
  #5 (permalink)  
Antiguo 16/08/2006, 17:52
Avatar de B**
B**
 
Fecha de Ingreso: enero-2006
Ubicación: Monterrey,Mexico
Mensajes: 952
Antigüedad: 11 años, 10 meses
Puntos: 3
Es una libreria que tienes que agregar... la puedes bajar de aqui:
http://www.aditus.nu/jpgraph/jpdownload.php
Luego sigue los pasos del tutorial.. que te puse.
__________________
-URL= Go PHP5.
-Age=22.
-Learning=PHP,J2EE,Struts,MAMBO,C++,JSON,AJAX,XHTML ,CSS.
  #6 (permalink)  
Antiguo 17/08/2006, 18:21
 
Fecha de Ingreso: octubre-2005
Mensajes: 69
Antigüedad: 12 años, 1 mes
Puntos: 0
Ya me funciono.. muchas gracias por tu ayuda
__________________
Ana Martins
  #7 (permalink)  
Antiguo 18/08/2006, 05:28
 
Fecha de Ingreso: agosto-2006
Mensajes: 20
Antigüedad: 11 años, 4 meses
Puntos: 0
Pregunta Duda

¿Donde se deben copiar los archivos de la libreria para que funcione?
  #8 (permalink)  
Antiguo 18/08/2006, 08:16
Avatar de B**
B**
 
Fecha de Ingreso: enero-2006
Ubicación: Monterrey,Mexico
Mensajes: 952
Antigüedad: 11 años, 10 meses
Puntos: 3
A la carpeta donde estan las paginas con las cual estas trabajando... o donde quieras pero pon la ruta cuando las incluyas.
__________________
-URL= Go PHP5.
-Age=22.
-Learning=PHP,J2EE,Struts,MAMBO,C++,JSON,AJAX,XHTML ,CSS.
  #9 (permalink)  
Antiguo 18/08/2006, 14:22
 
Fecha de Ingreso: agosto-2006
Mensajes: 26
Antigüedad: 11 años, 3 meses
Puntos: 0
Exclamación

y como se lee la base de datos?
  #10 (permalink)  
Antiguo 22/08/2006, 16:06
 
Fecha de Ingreso: enero-2003
Ubicación: Santiago
Mensajes: 301
Antigüedad: 14 años, 10 meses
Puntos: 1
tomar datos de BD y formar grafico

Hola amigos he utilizado el jpgraph, funciona bien, sin embargo yo quiero extraer datos estadisticos de mis visitas de mi web y mostrarlos graficamente, es decir, quiero mostrar en un grafico las visitas por dia del mes.

tambien me interesa tener un grafico por mes y por año..

pero me pierdo al traspasar los datos...necesito sus valiosos consejos..

que deberia hacer para ir traspazando al grafico los datos de la tabla, porque si los traspazo como se muestra, en la pantalla de resultado me muestra la última visita..deberia crear un array o algo que me vaya agregando los datos donde se hace la llamada al grafico.

uso el sgte tipo de grafico:
Código PHP:
<?php
include ("jpgraph/src/jpgraph.php");
include (
"jpgraph/src/jpgraph_bar.php");
$dias=$_GET["dias"];
$datay=array($dias);
// Create the graph. These two calls are always required
$graph = new Graph(300,200,"auto");    
$graph->SetScale("textlin");

// Add a drop shadow
$graph->SetShadow();

// Adjust the margin a bit to make more room for titles
$graph->img->SetMargin(40,30,20,40);

// Create a bar pot
$bplot = new BarPlot($datay);

// Adjust fill color
$bplot->SetFillColor('orange');

// Setup values
$bplot->value->Show();
$bplot->value->SetFormat('%d');
$bplot->value->SetFont(FF_FONT1,FS_BOLD);

// Center the values in the bar
$bplot->SetValuePos('center');

// Make the bar a little bit wider
$bplot->SetWidth(0.7);

$graph->Add($bplot);

// Setup the titles
$graph->title->Set("Centered values for bars");
$graph->xaxis->title->Set("X-title");
$graph->yaxis->title->Set("Y-title");

$graph->title->SetFont(FF_FONT1,FS_BOLD);
$graph->yaxis->title->SetFont(FF_FONT1,FS_BOLD);
$graph->xaxis->title->SetFont(FF_FONT1,FS_BOLD);

// Display the graph
$graph->Stroke();
?>
su ayuda será bien recibida
__________________
Cristian...

Última edición por nav2003; 22/08/2006 a las 16:28
  #11 (permalink)  
Antiguo 22/08/2006, 16:47
 
Fecha de Ingreso: octubre-2005
Mensajes: 69
Antigüedad: 12 años, 1 mes
Puntos: 0
Sonrisa

Hola martinberardo para leer en la BD debes de utilizar las funciones de acuerdo a la BD que utilices, por ejemplo si utilizas MySQL debes de utilizar:

Código PHP:
$con mysql_connect("direccion_IP","login","pass") or die ("ERROR "mysql_error());
mysql_select_db("nombre_BD",$con);

$sql="select * from tabla";
$result mysql_query($sql);
$row mysql_fetch_array($result
y en $row tienes un arreglo con los atributos que te trae la consulta sql


nav2003

Cita:
que deberia hacer para ir traspazando al grafico los datos de la tabla, porque si los traspazo como se muestra, en la pantalla de resultado me muestra la última visita..deberia crear un array o algo que me vaya agregando los datos donde se hace la llamada al grafico.
Mi consejo es que realices la consulta en el archivo donde graficas, porque al pasar el valor por GET al archivo que deseas graficar es un valor y no un arreglo, y al hacer $datay=array($dias); le estas colocando un valor en un arreglo. Por lo que deberías realizar la consulta en donde graficas o la otra opcion que conozco es que esa variable (arreglo) que tienes la consulta sql la coloques como una variable de session (que tenga acceso los dos .php) y luego en donde graficas llames a esa variable de session. Yo hice algo parecido y me fui por la 1ra opción.

Espero que les haya aclarado sus dudas
__________________
Ana Martins

Última edición por lidmartins; 22/08/2006 a las 17:02
  #12 (permalink)  
Antiguo 23/08/2006, 08:01
 
Fecha de Ingreso: enero-2003
Ubicación: Santiago
Mensajes: 301
Antigüedad: 14 años, 10 meses
Puntos: 1
gracias, voy a analizar lo que sugieres...

gracias.-
__________________
Cristian...
  #13 (permalink)  
Antiguo 23/08/2006, 10:44
 
Fecha de Ingreso: enero-2003
Ubicación: Santiago
Mensajes: 301
Antigüedad: 14 años, 10 meses
Puntos: 1
ingreso de datos

mira este es el codigo que utilizo, ejemplo:

Código PHP:
<?php
include ("connect.php");
    
//$spacer = "<hr size='1'>";
    
$time time();
    
$today date("d-m-Y",$time);
    
$date date("mY",$time);
    
$date_today date("dmY",$time);

    echo 
"$spacer";
    if (!
$limit){
        
$limit "30";
    }
    echo 
"<table border=1 width=600 bgcolor=#DBEDFD ><tr><td width=400 bgcolor=#9FD6FD class=csslink><span class='headline'>Visitas realizadas en los últimos $limit dias:</span></td><td width=120 align=center bgcolor=#FEFBDA class=csslink>Fecha</td><td width=120 align=center bgcolor=#FEFBDA class=csslink>N°Visita</td></tr>";
echo 
"$spacer";
$result mysql_query("SELECT * FROM counthits WHERE start like 'no' ORDER BY time DESC LIMIT 0,$limit");
    
while (
$row mysql_fetch_array($result)){
$time2 date("d-m-Y",$row[time]);
echo 
"<tr><td></td><td align=center bgcolor=#F3FA78   class=csslink><span class='time'>$time2</span></td><td align=center bgcolor=#F3FA78 class=csslink>$row[userstoday]</td></tr>";
    
$dias=$row["userstoday"];//dato a mostrar
    
        
//*********************inlusion de script para graficar************
include ("jpgraph/src/jpgraph.php");
include (
"jpgraph/src/jpgraph_bar.php");
//$dias=$_GET["dias"];

$datay=array($dias);
//echo"<img src=cont.php?op=visita_30&dias=$dias>";
//Create the graph. These two calls are always required
$graph = new Graph(300,200,"auto");    
$graph->SetScale("textlin");

// Add a drop shadow
$graph->SetShadow();

// Adjust the margin a bit to make more room for titles
$graph->img->SetMargin(40,30,20,40);

// Create a bar pot
$bplot = new BarPlot($datay);

// Adjust fill color
$bplot->SetFillColor('orange');

// Setup values
$bplot->value->Show();
$bplot->value->SetFormat('%d');
$bplot->value->SetFont(FF_FONT1,FS_BOLD);

// Center the values in the bar
$bplot->SetValuePos('center');

// Make the bar a little bit wider
$bplot->SetWidth(0.7);

$graph->Add($bplot);

// Setup the titles
$graph->title->Set("Centered values for bars");
$graph->xaxis->title->Set("X-title");
$graph->yaxis->title->Set("Y-title");

$graph->title->SetFont(FF_FONT1,FS_BOLD);
$graph->yaxis->title->SetFont(FF_FONT1,FS_BOLD);
$graph->xaxis->title->SetFont(FF_FONT1,FS_BOLD);

// Display the graph
$graph->Stroke();
}
//*********************termino de script para graficar************
mysql_close();
?>
__________________
Cristian...
  #14 (permalink)  
Antiguo 23/08/2006, 10:50
 
Fecha de Ingreso: enero-2003
Ubicación: Santiago
Mensajes: 301
Antigüedad: 14 años, 10 meses
Puntos: 1
no se como tomar todos los datos de la base para mostrarlo en el grafico

este script me muestra por ej:
la fecha=($time2) N° visita=($dias)
fecha - N°visitas
(26-01-2006) (15)visitas
(27-01-2006) (7)visitas
(28-01-2006) (70)visitas
......etc...

esto es lo que quiero mostrar en el grafico...
__________________
Cristian...
  #15 (permalink)  
Antiguo 26/08/2006, 10:39
 
Fecha de Ingreso: marzo-2005
Mensajes: 26
Antigüedad: 12 años, 8 meses
Puntos: 0
Problemas en la instalacion de ChartDirector

Ayuda...

Al instalar PHP como modulo dejo de cargar 'ChartDirector' tengo PHP 4.3
el error es:

Trying to load "phpchartdir421.dll" from the PHP extension directory "./" (note: directory ambiguous).

dl(): Not supported in multithreaded Web servers - use extension statements in your php.ini

Also trying to load "phpchartdir421.dll" from "\servidor_web\ChartDir\lib" (note: drive ambiguous).

dl(): Not supported in multithreaded Web servers - use extension statements in your php.ini


Ya configure el php.ini pero igual no se arregla.

Hay algo mas que debo hacer?

Grasias.

David AF
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 21:30.