elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  crear graficas con JPGRAPH
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: crear graficas con JPGRAPH  (Leído 8,421 veces)
RedZer


Desconectado Desconectado

Mensajes: 666



Ver Perfil
crear graficas con JPGRAPH
« en: 9 Febrero 2011, 05:57 am »

Bueno el problema es el siguiente estoy intetentando crear graficas utilizando esta libreria de echo si me crea la grafica el problema surge cuando quiero mostrar los resultados
ejemplo tengo una tabla llamada actividades y otra llamada asignacion en tonces a cada trabajador se le asignara una actividad  y yo lo que quiero es mostrar cuantos trabjadores participaron en la actividad del dia de las madres  o bien en el dia de san valentin por decirlo asi , la grafica que estoy intentando hacer es la grafica de barras de echo si me los muestra pero no con los resultados deceados :-\ lo que me hace el codigo que planteare es mostrarme solo una barra cuando me deberia de mostrar 3 barras por que son 3 actividades en las que estan participando los empleados mi codigo es el siguiente
Código
  1.  
  2. <?php
  3. include("jpgraph/inc/jpgraph.php");
  4. include("jpgraph/inc/jpgraph_bar.php");
  5. include("conexion.php");
  6.  
  7. conectar();
  8. $result=mysql_query("select * FROM actividades ");
  9. desconectar();
  10. if (mysql_num_rows($result)>0)
  11. {
  12.  
  13. while ($row=mysql_fetch_array($result))
  14. {
  15.  
  16.  
  17.  conectar();
  18. $queEmp1 = mysql_query("SELECT COUNT(id_actividad)as num,id_actividad FROM asignacion  where id_actividad='$row[0]'");
  19. $rowEmp1 = mysql_fetch_assoc($queEmp1);
  20. $num=$rowEmp1['num'];
  21.  
  22. desconectar();
  23.  
  24.  
  25.  
  26. //AQUI ES DONDE TENGO EL PROBLEMA CREO YA QUE NADA MAS ME MUESTRA UNA BARRA CUANDO ME deberia DE MOSTRAR 3 YA QUE LA VARIABLE NUM ME ESTA DEVOLVIENDO 3 VALORES OSEA 1,1,1.
  27. $ydata=array($num);
  28.  
  29.  
  30.  
  31.  
  32.    }
  33.  
  34.     }
  35.  
  36.  
  37.  
  38. $graph = new Graph(750, 350, "auto");    
  39. $graph->SetScale("textlin");
  40.  
  41. $graph->img->SetMargin(40, 20, 20, 40);
  42. $graph->title->Set("GRAFICA DE ACTIVIDADES  ");
  43. $graph->xaxis->title->Set("Altura" );
  44. $graph->yaxis->title->Set("Total" );
  45.  
  46.  
  47. $barplot =new BarPlot($ydata);
  48. $barplot->SetColor("orange");
  49.  
  50. $graph->Add($barplot);
  51. $graph->Stroke();
  52. ?>
  53.  
  54.  


En línea

Nacido y criado entre gente que enseño a pensar antes de creer a ciegas, Todo me causa curiosidad en el mundo
Castg!
Wiki

Desconectado Desconectado

Mensajes: 1.191



Ver Perfil WWW
Re: crear graficas con JPGRAPH
« Respuesta #1 en: 9 Febrero 2011, 06:53 am »

Código
  1. <?php
  2. include("jpgraph/inc/jpgraph.php");
  3. include("jpgraph/inc/jpgraph_bar.php");
  4. include("conexion.php");
  5.  
  6. conectar();
  7. $result=mysql_query("select * FROM actividades ");
  8.  
  9. $ydata=array();
  10.  
  11. if (mysql_num_rows($result)>0) {
  12. while ($row=mysql_fetch_array($result)) {
  13. $queEmp1 = mysql_query("SELECT COUNT(id_actividad)as num,id_actividad FROM asignacion where id_actividad='".$row[0]."'");
  14. $rowEmp1 = mysql_fetch_assoc($queEmp1);
  15. $num=$rowEmp1['num'];
  16.  
  17. //AQUI ES DONDE TENGO EL PROBLEMA CREO YA QUE NADA MAS ME MUESTRA UNA BARRA CUANDO ME deberia DE MOSTRAR 3 YA QUE LA VARIABLE NUM ME ESTA DEVOLVIENDO 3 VALORES OSEA 1,1,1.
  18. $ydata[]=$num;
  19. }
  20. }
  21.  
  22. desconectar();
  23.  
  24. $graph = new Graph(750, 350, "auto");    
  25. $graph->SetScale("textlin");
  26.  
  27. $graph->img->SetMargin(40, 20, 20, 40);
  28. $graph->title->Set("GRAFICA DE ACTIVIDADES  ");
  29. $graph->xaxis->title->Set("Altura" );
  30. $graph->yaxis->title->Set("Total" );
  31.  
  32. $barplot =new BarPlot($ydata);
  33. $barplot->SetColor("orange");
  34.  
  35. $graph->Add($barplot);
  36. $graph->Stroke();
  37.  
  38. ?>
  39.  

Podrias explicar un poco mejor como están compuestas las tablas? Practicamente que valor o columna está devolviendo $row[0]?
Fijate en el codigo que puse, te saque algunos "conectar()" y "desconectar()" que veia inecesarios, pero, que función realizan dichas?
Además lo que hice fue declarar la variable $ydata como array y en el while se le agrega un nuevo indice con el valor $num. Lo estoy haciendo a ciegas asi que nose si es esto lo que queres. Explicate un poco más.

Saludo!


En línea

RedZer


Desconectado Desconectado

Mensajes: 666



Ver Perfil
Re: crear graficas con JPGRAPH
« Respuesta #2 en: 9 Febrero 2011, 07:13 am »

muchas gracias Castg! me sacaste de un lio practicamente era esta parte lo que me estaba fallando $ydata[]=$num; y mira $row[0] vendria siendo el id de mi tabla actividades  por que cuando yo asigno una actividad lo guardo en la tabla asignacion junto con datos personales del trabjador pero en la tabla asignacion solo guardo el id de la actividad  mis tablas tienen la siguiente estructura
TABLA ACTIVIDADES
Código
  1. id_actividad
  2. nombre_actividad
  3. hora
  4. fecha d inicio
  5. fecha de terminacion
  6. lugar
  7. actividad      
  8.  

TABLA ASIGNACION

Código
  1. id_asignacion
  2. id_actividad
  3. nombre
  4. apellidos
  5. departamento
  6. rpe
  7. sexo
  8. contrato
  9.  

bueno mira tengo otra duda como puedo imprimir titulos de bajo de las barras lo estoy intentando con este codigo $graph->xaxis->SetTickLabels(array($row[1]));  pero nada mas me imprime un solo titulo mi codigo completo quedo asi

Código
  1. <?php
  2. include("jpgraph/inc/jpgraph.php");
  3. include("jpgraph/inc/jpgraph_bar.php");
  4. include("conexion.php");
  5.  
  6. conectar();
  7. $result=mysql_query("select * FROM actividades ");
  8. desconectar();
  9. if (mysql_num_rows($result)>0)
  10. {
  11.  
  12. while ($row=mysql_fetch_array($result))
  13. {
  14.  
  15.  
  16.  conectar();
  17. $queEmp1 = mysql_query("SELECT COUNT(id_actividad)as num,id_actividad FROM asignacion  where id_actividad='$row[0]'");
  18. $rowEmp1 = mysql_fetch_assoc($queEmp1);
  19. $num=$rowEmp1['num'];
  20.  
  21. desconectar();
  22.  
  23.  
  24. //crea una serie para un grafico de barras
  25. $graph = new Graph(750, 350, "auto");  
  26. $graph->SetScale("textlin");
  27. $graph->title->Set("GRAFICA DE ACTIVIDADES  ");
  28. $graph->img->SetMargin(40, 20, 20, 40);
  29. //Asigna las etiquetas para los valores del eje x
  30. $graph->xaxis->SetTickLabels(array($row[1]));
  31. $ydata[]=$num;
  32. $graph->yaxis->title->Set("Total" );
  33.  
  34.    }
  35.  
  36.     }
  37.  
  38.  
  39.  
  40.  
  41. $barplot =new BarPlot($ydata);
  42. $barplot->SetColor("orange");
  43.  
  44. $graph->Add($barplot);
  45. $graph->Stroke();
  46.  
  47.  
  48.  
  49. ?>
  50.  
En línea

Nacido y criado entre gente que enseño a pensar antes de creer a ciegas, Todo me causa curiosidad en el mundo
RedZer


Desconectado Desconectado

Mensajes: 666



Ver Perfil
Re: crear graficas con JPGRAPH
« Respuesta #3 en: 9 Febrero 2011, 07:37 am »

ya quedo dejo el codigo completo muchisimas gracias castg
Código
  1.  
  2. <?php
  3. include("jpgraph/inc/jpgraph.php");
  4. include("jpgraph/inc/jpgraph_bar.php");
  5. include("conexion.php");
  6.  
  7. conectar();
  8. $result=mysql_query("select * FROM actividades ");
  9. desconectar();
  10. if (mysql_num_rows($result)>0)
  11. {
  12.  
  13. while ($row=mysql_fetch_array($result))
  14. {
  15.  
  16.  
  17.  conectar();
  18. $queEmp1 = mysql_query("SELECT COUNT(id_actividad)as num,id_actividad FROM asignacion  where id_actividad='$row[0]'");
  19. $rowEmp1 = mysql_fetch_assoc($queEmp1);
  20. $num=$rowEmp1['num'];
  21.  
  22. desconectar();
  23.  
  24. $vector[]=$row[6];
  25. //crea una serie para un grafico de barras
  26. $graph = new Graph(750, 350, "auto");  
  27. $graph->SetScale("textlin");
  28. $graph->title->Set("GRAFICA DE ACTIVIDADES  ");
  29. $graph->img->SetMargin(40, 20, 20, 40);
  30. //Asigna las etiquetas para los valores del eje x
  31. //$graph->xaxis->SetTickLabels(array($row[6]));
  32. $graph->xaxis->SetTickLabels($vector);
  33.  
  34.  
  35. $ydata[]=$num;
  36. $graph->yaxis->title->Set("Total" );
  37.  
  38.    }
  39.  
  40.     }
  41.  
  42.  
  43.  
  44.  
  45. $barplot =new BarPlot($ydata);
  46. $barplot->SetColor("orange");
  47.  
  48. $graph->Add($barplot);
  49. //para ponerlo en negritas los titulos
  50. $graph->xaxis->SetFont(FF_FONT1,FS_BOLD);
  51. $graph->Stroke();
  52.  
  53.  
  54.  
  55. ?>
  56.  
  57.  
  58.  
  59.  
En línea

Nacido y criado entre gente que enseño a pensar antes de creer a ciegas, Todo me causa curiosidad en el mundo
Castg!
Wiki

Desconectado Desconectado

Mensajes: 1.191



Ver Perfil WWW
Re: crear graficas con JPGRAPH
« Respuesta #4 en: 9 Febrero 2011, 19:59 pm »

Ya con esa clase no te puedo ayudar yo :P
Unplacer ayudarte, nunca dudes en comentar tus problemas que seguramente te vamos a poder ayudar
En línea

RedZer


Desconectado Desconectado

Mensajes: 666



Ver Perfil
Re: crear graficas con JPGRAPH
« Respuesta #5 en: 9 Febrero 2011, 20:16 pm »

bueno hay un detalle minimo que llevo la mitad del dia buscando como hacerle pero no hay info de eyo no se aque se deba quiero poner un icono  de una impresora obiamente para que el usuario pueda imprimir la grafica la cuestion es que no me lo acepta mas bien no me aroja la imagen pense que era por que la imagen de la impresora lo tapaba la imagen de la grafica entonces decidi hacer unos saltos de linea y ni asi saben por que? el codigo completo es el siguiente

Código
  1. <?php
  2. include("jpgraph/inc/jpgraph.php");
  3. include("jpgraph/inc/jpgraph_bar.php");
  4. include("conexion.php");
  5.  
  6.  
  7.  
  8.  
  9.  
  10. conectar();
  11. $result=mysql_query("select * FROM actividades ");
  12. desconectar();
  13. if (mysql_num_rows($result)>0)
  14. {
  15.  
  16. while ($row=mysql_fetch_array($result))
  17. {
  18.  
  19.  
  20.  conectar();
  21. $queEmp1 = mysql_query("SELECT COUNT(id_actividad)as num,id_actividad FROM asignacion  where id_actividad='$row[0]'");
  22. $rowEmp1 = mysql_fetch_assoc($queEmp1);
  23. $num=$rowEmp1['num'];
  24.  
  25. desconectar();
  26.  
  27. $vector[]=$row[6];
  28. //crea una serie para un grafico de barras
  29. $graph = new Graph(1000, 350, "auto");  
  30. $graph->SetScale("textlin");
  31. $graph->title->Set("GRAFICA DE ACTIVIDADES  ");
  32. $graph->img->SetMargin(40, 20, 20, 40);
  33. //Asigna las etiquetas para los valores del eje x
  34.  
  35. $graph->xaxis->SetTickLabels($vector);
  36. //$graph->xaxis->SetLabelAngle(90); //damos el angulo a la etiqueta de 0 a 90
  37.  
  38. $ydata[]=$num;
  39. $graph->yaxis->title->Set("Total" );
  40.  
  41.    }
  42.  
  43.     }
  44.  
  45.  
  46.  
  47.  
  48.  
  49. $barplot =new BarPlot($ydata);
  50. $barplot->SetColor("red");
  51. //$barplot->SetFillColor('green');
  52. $graph->Add($barplot);
  53. $graph->Stroke();
  54.  
  55.  
  56.  
  57. ?>
  58. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  59. <html xmlns="http://www.w3.org/1999/xhtml">
  60. <head>
  61. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  62. <title>Documento sin t&iacute;tulo</title>
  63. </head>
  64.  
  65. <body>
  66. <img src="imagenes/printer.png" width="16" height="16" onClick="window.print();" />
  67.  
  68.  
  69. </body>
  70. </html>
  71.  
  72.  
  73.  
« Última modificación: 9 Febrero 2011, 20:18 pm por RedZer » En línea

Nacido y criado entre gente que enseño a pensar antes de creer a ciegas, Todo me causa curiosidad en el mundo
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Cómo crear interfaces gráficas con Look And Feel en Java « 1 2 »
Java
Casidiablo 15 67,013 Último mensaje 11 Diciembre 2011, 19:58 pm
por jorgemora
Crear graficas organizacionales
PHP
:ohk<any> 8 6,921 Último mensaje 4 Enero 2010, 21:00 pm
por :ohk<any>
JpGraph
PHP
chispita68 1 2,676 Último mensaje 22 Agosto 2010, 22:34 pm
por Nakp
Crear Gráficas
PHP
GhostLT 0 1,873 Último mensaje 7 Septiembre 2011, 19:27 pm
por GhostLT
Ayuda Graficos estadisticos!(JpGraph )
PHP
COD3DZ3R0 1 2,258 Último mensaje 12 Octubre 2012, 05:23 am
por COD3DZ3R0
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines