Foros del Web » Programando para Internet » PHP »

PHP OO Grafico con jpgraph y fpdf

Estas en el tema de Grafico con jpgraph y fpdf en el foro de PHP en Foros del Web. Saludos. Estoy generando un grafico tipo tarta en un archivo pdf con las librerias jpgraph y fpdf. Es este mi metodo, el cual funciona bien ...
  #1 (permalink)  
Antiguo 20/06/2012, 11:18
 
Fecha de Ingreso: agosto-2011
Mensajes: 15
Antigüedad: 13 años, 2 meses
Puntos: 1
Pregunta Grafico con jpgraph y fpdf

Saludos.

Estoy generando un grafico tipo tarta en un archivo pdf con las librerias jpgraph y fpdf.

Es este mi metodo, el cual funciona bien cuando lo llamo una o dos veces en la misma funcion, pero si lo ejecuto una tercer vez ya no me devuelve nada, se detiene en la funcion stroke() y no genera el pdf.

El problema es que necesito colocarlo en un ciclo for para generar varios graficos.

Código PHP:
Ver original
  1. require_once('fpdf.php');
  2. require_once('jpgraph-3.5/src/jpgraph.php');
  3. require_once('jpgraph-3.5/src/jpgraph_pie.php');
  4. require_once ('jpgraph-3.5/src/jpgraph_pie3d.php');
  5.  
  6. class Reporte extends FPDF
  7. {
  8.     public function __construct($datos = array('P', 'mm', 'A4'))
  9.     {
  10.         parent::__construct($datos);
  11.     }
  12.  
  13.         public function gaficoPDF($datos = array(),$nombreGrafico =  NULL,$ubicacionTamanio = array(),$titulo = NULL)
  14.     {
  15.         ...
  16.            
  17.             #Creamos un grafico vacio
  18.             $graph = new PieGraph(600,400);
  19.             log_message('debug','grafico vacio');
  20.             $graph->SetShadow();
  21.            
  22.             ...
  23.            
  24.             //Creamos el plot de tipo tarta
  25.             $p1 = new PiePlot3D($data);
  26.             $p1->SetSliceColors($color);
  27.             $p1->SetAngle(33);
  28.  
  29.             #indicamos la leyenda para cada porcion de la tarta
  30.             $p1->SetLegends($nombres);
  31.            
  32.             //Añadirmos el plot al grafico
  33.             $graph->Add($p1);
  34.            
  35.             //mostramos el grafico en pantalla
  36.             if(file_exists("$nombreGrafico.png")){
  37.             @unlink("$nombreGrafico.png");
  38.             }
  39.            
  40.             $graph->Stroke("$nombreGrafico.png");
  41.             $this->Image("$nombreGrafico.png",$x,$y,$ancho,$altura);
  42.         }
  43.     }
  44. }


LLamo la libreria (CodeIgniter) y le paso los parametros:

Código PHP:
Ver original
  1. $this->load->library('reporte','','pdf');
  2. $this->pdf->AddPage();//agregamos la pagina
  3. $this->pdf->Cell(0,5,"Sistema de Capacitación",0,0,'C');
  4.                    
  5. $this->pdf->gaficoPDF( array('aprobados' => array(80, 'blue'),
  6.                                               'reprobados' => array(20, 'blue')),
  7.                                                "Nombre del grafico",
  8.                                                 array(35,40,140,80),
  9.                                                 'Encuesta');

Agradezco sus respuestas.
  #2 (permalink)  
Antiguo 20/06/2012, 12:24
 
Fecha de Ingreso: agosto-2011
Mensajes: 15
Antigüedad: 13 años, 2 meses
Puntos: 1
Respuesta: Grafico con jpgraph y fpdf

He encontrado que la funcion stroke solo puede llamarse una vez, cuando la envia al navegador, pero entonces porque si me genera el segundo grafico y el tercero ya no.

Etiquetas: fpdf, 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 14:05.