]> git.llucax.com Git - mecon/meconlib.git/blobdiff - lib/MECON/Graph.php
BugFix.
[mecon/meconlib.git] / lib / MECON / Graph.php
index 4ca6de106467cbce9e27f8b6f56622578b5eee97..fa8d412deeecdd955538665ceffca200cbe780ea 100644 (file)
@@ -82,6 +82,11 @@ class MECON_Graph {
      * - YTitulo (Título del Eje Y)
      * - XEtiquetas (Array de Referencias del eje X)
      * - XEtiquetasRotar (Rota las etiquetas del eje X en 90 grados)
+     * - margenes (array asociativo con alguna/s de las siguientes claves:
+     *              - L (margen izquierdo)
+     *              - R (margen derecho)
+     *              - T (margen superior)
+     *              - B (margen inferior))
      *
      * @return void
      * @access public
@@ -119,7 +124,7 @@ class MECON_Graph {
             require_once 'MECON/Graph/external/jpgraph/src/jpgraph_pie3d.php';
             
             $this->_grafico= new PieGraph($ancho,$alto);
-            
+
         }
       
         //Atributos en comun
@@ -130,8 +135,22 @@ class MECON_Graph {
             $this->_grafico->subtitle->Set($attrib_gral['subTitulo']);
         if (isset($attrib_gral['verSombra']) and $attrib_gral['verSombra']==true)
             $this->_grafico->SetShadow();
-        
-       }
+
+        if (isset($attrib_gral['margenes'])){
+               if (isset($attrib_gral['margenes']['L']))
+                       $this->_grafico->img->left_margin = $attrib_gral['margenes']['L'];
+               
+               if (isset($attrib_gral['margenes']['R']))
+                       $this->_grafico->img->right_margin = $attrib_gral['margenes']['R'];
+               
+               if (isset($attrib_gral['margenes']['T']))
+                       $this->_grafico->img->top_margin = $attrib_gral['margenes']['T'];
+               
+               if (isset($attrib_gral['margenes']['B']))
+                       $this->_grafico->img->bottom_margin = $attrib_gral['margenes']['B'];
+           }
+
+    }
 
 
     /**
@@ -154,10 +173,18 @@ class MECON_Graph {
      * - tipoMarca (de 1 a 17) (solamente para puntos)
      * - etiquetas (array) (para gráficos de torta muestra las etiquetas
      *                         en lugar de los porcentajes)
+     * - tema ("earth", "pastel", "water", "sand") 
+     *          (para gráficos de torta, permite cambiar el esquema de colores)
+     *          (es "earth" por default)
      * - explotar (para torta y torta3D) (valor que indica la separación de
-     *                                 de las porciones de la torta) 
+     *                     de las porciones de la torta) 
      * - posLeyenda (array con dos coordenadas para la posición de la leyenda)
-     * - formatoValores (string con el formato que se quiere dar a los valores (sprintf))
+     * - formatoValores (string con el formato que se quiere dar a los valores
+     *                  (sprintf))
+     * - noAgregar (Si está seteado indica que la secuencia se genera pero no
+     *              se agrega al gráfico.  Se utiliza para gráficos de barras
+     *              acumulativos, donde las secuencias deben agregarse todas
+     *              juntas al final)
      *
      * @return plot
      * @access public
@@ -229,7 +256,7 @@ class MECON_Graph {
 
             }else
             { 
-                die ("Error: Tipo de grafico $tipo no valido (aun)");
+                trigger_error ("Error: Tipo de grafico $tipo no valido (aun)", E_USER_ERROR);
             }
         }//del if tipo xy
 
@@ -250,6 +277,9 @@ class MECON_Graph {
         
             if (isset($atributos['leyendas']))
                 $plot->SetLegends($atributos['leyendas']);
+            if (isset($atributos['tema']))
+                $plot->SetTheme($atributos['tema']);
 
             if (isset($atributos['etiquetas']))
                 $plot->SetLabels($atributos['etiquetas']);
@@ -265,8 +295,7 @@ class MECON_Graph {
                        $plot->ExplodeAll($atributos['explotar']);
                
         }// del if torta
-
-        $this->_grafico->Add($plot);
+       
 
        if (isset($atributos['posLeyenda']))
         {
@@ -274,7 +303,10 @@ class MECON_Graph {
                $this->_grafico->legend->ypos = $atributos['posLeyenda'][1];
            }
 
-        return $plot;    
+        if (!isset($atributos['noAgregar']))
+            $this->_grafico->Add($plot);
+       
+           return $plot;    
     
     }