Foros del Web » Programando para Internet » PHP »

varios gráficos con JPGRAPH en bucle

Estas en el tema de varios gráficos con JPGRAPH en bucle en el foro de PHP en Foros del Web. buenas,, al tengo q hacer unas graficas de barra dependiendo de una información en la base de datos,,, pero al hacer un simple ejemplo usando ...
  #1 (permalink)  
Antiguo 30/11/2009, 19:56
 
Fecha de Ingreso: noviembre-2009
Mensajes: 112
Antigüedad: 15 años
Puntos: 0
varios gráficos con JPGRAPH en bucle

buenas,, al tengo q hacer unas graficas de barra dependiendo de una información en la base de datos,,, pero al hacer un simple ejemplo usando jpraph en un for no me funciona, me sale una imagen pequeña con una X, les muestro el codigo:

<PHP>
for($i = 0 ; $i < 5 ; $i ++)
graficar($i);

function graficar($i)
{
echo("olaaaaaaaa");
$ydata = array(2, $i);
$graph = new Graph(350, 250, "auto");
$graph->SetScale("textlin");

$graph->img->SetMargin(40, 20, 20, 40);
$graph->title->Set("JpGraph Demo");
$graph->xaxis->title->Set("Altura" );
$graph->yaxis->title->Set("Total" );

$barplot =new BarPlot($ydata);
$barplot->SetColor("orange");

$graph->Add($barplot);
$graph->Stroke();
}
</PHP>

no me muestra en el "olaaaaaa",,,

Gracias por la ayuda

Última edición por geoMente; 30/11/2009 a las 20:02
  #2 (permalink)  
Antiguo 30/11/2009, 23:15
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 15 años, 6 meses
Puntos: 50
Respuesta: varios gráficos con JPGRAPH en bucle

Varias cosas:
  • Un archivo PHP puede ser una imagen o una página (u otras cosas) pero no varias cosas a la vez. Cuando intentas generar una imagen dinámica, el script PHP envía al navegador un header (debe ser la primera información de la página que le llegue al navegador) que le indica que el documento es una imagen, entonces el navegador sabe cómo interpretarla. Por eso, no puedes hacer un echo en un script que genera imágenes.
  • Por lo anterior, creo que tampoco puedes hacer stroke más de una vez (al menos que pretendas guardar la imagen en el servidor en lugar de enviarla al navegador).
  • De todos modos, supongo que primero tendría que imprimirte "olaaaaaaaa" y después un mensaje de error diciendo que no se pueden enviar los headers porque ya se envío información al navegador (justamente, el "olaaaaaaaa"). ¿No tendrás algún error "fatal" en el script?, por ejemplo: ¿estás incluyendo las clases del jpgraph? Haz pruebas comentando partes de código para depurar.
¡Suerte!
  #3 (permalink)  
Antiguo 01/12/2009, 01:37
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: varios gráficos con JPGRAPH en bucle

dggluz, me agrada tu forma de expresarte... estas en todo lo correcto!!!


geoMente, si... definitivamente prueba a abrir la URL de la imagen en el navegador...

osea, intenta arrastrando la X hacía la barra de direcciones y que se cargue ¿que arroja??
(evidentemente será el texto, o un error, etc... si es así, lee con atención lo que te dice dggluz)
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 01/12/2009, 13:39
 
Fecha de Ingreso: noviembre-2009
Mensajes: 112
Antigüedad: 15 años
Puntos: 0
Respuesta: varios gráficos con JPGRAPH en bucle

O alguien sabe de alguna libreria de graficos en php que funcione con bucles o en ejemplo con bucles q funcione...gracias

Voy a probar

Última edición por geoMente; 01/12/2009 a las 13:40 Razón: No habia visto las respuestas voy a probar
  #5 (permalink)  
Antiguo 01/12/2009, 13:47
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 15 años, 6 meses
Puntos: 50
Respuesta: varios gráficos con JPGRAPH en bucle

No estoy seguro de que se pueda hacer, pero creo que puedes agregar varios "plots" a tu "graph", ¿se entiende? Nunca lo hice y no sé como se hace, pero casi seguro puedes hacerlo (es cuestión de navegar en la documentación de JPGraph, si mal no recuerdo, viene incluida en el archivo comprimido con el resto de la librería). Sino, puedes sencillamente generar una imagen para cada gráfico. Lo que sí es seguro: por cada imagen sólo puedes hacer UN stroke. No te recomiendo cambiar de librería, la que estás usando es excelente. ¡Suerte!
  #6 (permalink)  
Antiguo 01/12/2009, 14:16
 
Fecha de Ingreso: noviembre-2009
Mensajes: 112
Antigüedad: 15 años
Puntos: 0
Respuesta: varios gráficos con JPGRAPH en bucle

ola,, probé 3 cosas:
1. Lo que me dijiste le quité la instrucción $graph->Stroke(); y deje el echo(olaa),, y efectivamente me muestra el olaaaaa cinco veces(pero no me arroja ningún error)

2. quité el ola y dejé el stroke y me muestra sólo una imagen y no me muestra la barra de la variable $i q le entra en $ydata = array(2, $i);

3. y probé arrastrando la imagen X a la URL pero no me sale nada me deja la dirección que está en el momento,,,

Que más podría hacer??,,,o como dije antes si alguien tienen algun ejemplo de una libreria de graficas en php con bucles me serviría musho,, es q no he encontrado ninguno,,

Graciassss
  #7 (permalink)  
Antiguo 01/12/2009, 14:25
 
Fecha de Ingreso: noviembre-2009
Mensajes: 112
Antigüedad: 15 años
Puntos: 0
Respuesta: varios gráficos con JPGRAPH en bucle

bueno,, si ud dice que es buena,, no voy a cambiar de libreria,,, pero a se refiere con "sencillamente generar una imagen para cada gráfico"???,,, si lo que necesito es hacer varias gráficas dentro de un bucle??,

bueno,, y voy a mirar la documentación q ud dice,, por q ps hasta ahora empecé a probar esta librería y no se que es un "plot" ni nada jeje voy a mirar,,,

Gracias
y ps si estoy incluyendo las librerías jgraph,,,

Graciassss
  #8 (permalink)  
Antiguo 01/12/2009, 14:30
Avatar de dcreate  
Fecha de Ingreso: octubre-2009
Ubicación: Veracruz
Mensajes: 536
Antigüedad: 15 años, 1 mes
Puntos: 22
Respuesta: varios gráficos con JPGRAPH en bucle

yo trabaje con jpgraph y pues la vdd es muy buena pero hay muy poco para aprender de ella, a mi hace un tiempo me recomendaron otra, mira aki y como usarlo aca. Espero puedas solucionar tu problema, suerte
  #9 (permalink)  
Antiguo 01/12/2009, 23:03
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 15 años, 6 meses
Puntos: 50
Respuesta: varios gráficos con JPGRAPH en bucle

Cada "diagrama" es un "plot". Cada "imagen" (todo el archivo de la imagen completo) es un "graph". Por eso digo, que quizás puedas añadir varios plots a un mismo graph. Prueba sin el bucle primero, porque si ni siquiera puedes generar la imagen básica, no vale la pena que te sigas complicando por ahora. Una vez lo consigas, puedes probar cosas más complejas. ¡Suerte!
  #10 (permalink)  
Antiguo 02/12/2009, 14:07
 
Fecha de Ingreso: noviembre-2009
Mensajes: 112
Antigüedad: 15 años
Puntos: 0
Respuesta: varios gráficos con JPGRAPH en bucle

ola,, dggluz,, si, lo primero que hice fue probar mostrando una imagen de barras sin nigún bucle y SI la muestra,,,
pero al introducir el codigo en una función y llamarla varias veces en un bucle no funciona, la instrucción $graph->Stroke(); al parecer es la q pinta la grafica, entonces ps tiene q estar en la funcion,, la verdad he intentado mushas otras cosas con esta librería pero nada de nada,,

Por ahy me comentaron que el API google chart es tambn bueno,, lo estoy mirando,, si alguien tiene un ejemplo de éste con un bucle, gracias

....Espero respuestas....gracias
  #11 (permalink)  
Antiguo 02/12/2009, 14:40
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 15 años, 6 meses
Puntos: 50
Respuesta: varios gráficos con JPGRAPH en bucle

A mí se me ocurre que a lo mejor puedes quitar el $graph->Stroke(); del bucle y ponerlo luego del bucle. Prueba eso. ¡Suerte!
  #12 (permalink)  
Antiguo 02/12/2009, 15:05
 
Fecha de Ingreso: noviembre-2009
Mensajes: 112
Antigüedad: 15 años
Puntos: 0
Respuesta: varios gráficos con JPGRAPH en bucle

ola dggluz,, ya lo había probado,,, y me muestra una sola gráfica con el valor con el que qda la variable cuando se sale del bucle,,, en el caso del ejemplo 5....
  #13 (permalink)  
Antiguo 02/12/2009, 15:40
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 15 años, 6 meses
Puntos: 50
Respuesta: varios gráficos con JPGRAPH en bucle

Entonces yo lo haría con una sola gráfica (incluyendo el script como si fuese una imagen desde otro script) y puedes llamarlo cuantas veces quieras pasándole las variables por GET. ¡Suerte!
  #14 (permalink)  
Antiguo 03/12/2009, 10:54
 
Fecha de Ingreso: noviembre-2009
Mensajes: 112
Antigüedad: 15 años
Puntos: 0
Respuesta: varios gráficos con JPGRAPH en bucle

buenas,,, ps les cuento que probé lo mismo con la librería de google chart y al parecer es mejor ,, o bno,, por lo menos me sirvió para lo q yo quería que era generar varias graficas con valores diferentes en una misma página...con un bucle...

No quiere decir q esta librería sea mejor q jpgraph,, pero para éste caso si...

Muchas gracias por la ayuda de todos de todas formas

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 14:13.