Ver Mensaje Individual
  #7 (permalink)  
Antiguo 30/11/2015, 12:42
JimmyBrain
 
Fecha de Ingreso: noviembre-2014
Mensajes: 46
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Colocar un nuevo array en barplot en JpGraph

hola morti , gracias por seguir ayudandome , el tema es que tu codigo queda asi :
Código PHP:
Ver original
  1. function consultarDeudoresMesGrafico($year)
  2.         {
  3.            
  4.             $consulta = "";
  5.            
  6.             if ($year == "") {
  7.                 $consulta = mysql_query("select id_deudor,month(fecha_pago_deudor) from deudores");
  8.             } else {
  9.                 $consulta = mysql_query("select id_deudor,month(fecha_pago_deudor) from deudores where year(fecha_pago_deudor)='" . $year . "'");
  10.             }
  11.            
  12.             $monto_total = "0";
  13.            
  14.             if ($year == "") {
  15.                 $monto_total = totalDeudores();
  16.             } else {
  17.                 $monto_total = totalDeudorPorYear($year);
  18.             }
  19.            
  20.             if (!is_numeric($monto_total)) {
  21.                 $monto_total = "0";
  22.             }
  23.            
  24.             $montos = array("300","400","600","800","900","200","300","100","400","600","800","900");
  25.            
  26.             $cantidad = mysql_num_rows($consulta);
  27.            
  28.             $ids = array();
  29.            
  30.             $Enero      = 0;
  31.             $Febrero    = 0;
  32.             $Marzo      = 0;
  33.             $Abril      = 0;
  34.             $Mayo       = 0;
  35.             $Junio      = 0;
  36.             $Julio      = 0;
  37.             $Agosto     = 0;
  38.             $Septiembre = 0;
  39.             $Octubre    = 0;
  40.             $Noviembre  = 0;
  41.             $Diciembre  = 0;
  42.            
  43.             while ($resultado = mysql_fetch_array($consulta)) {
  44.                
  45.                 $id_cliente = $resultado[0];
  46.                 $mes_pago   = $resultado[1];
  47.                
  48.                 if (!in_array($id_cliente, $ids)) {
  49.                     array_push($ids, $id_cliente);
  50.                     if ($mes_pago == 1) {
  51.                         $Enero++;
  52.                     }
  53.                     if ($mes_pago == 2) {
  54.                         $Febrero++;
  55.                     }
  56.                     if ($mes_pago == 3) {
  57.                         $Marzo++;
  58.                     }
  59.                     if ($mes_pago == 4) {
  60.                         $Abril++;
  61.                     }
  62.                     if ($mes_pago == 5) {
  63.                         $Mayo++;
  64.                     }
  65.                     if ($mes_pago == 6) {
  66.                         $Junio++;
  67.                     }
  68.                     if ($mes_pago == 7) {
  69.                         $Julio++;
  70.                     }
  71.                     if ($mes_pago == 8) {
  72.                         $Agosto++;
  73.                     }
  74.                     if ($mes_pago == 9) {
  75.                         $Septiembre++;
  76.                     }
  77.                     if ($mes_pago == 10) {
  78.                         $Octubre++;
  79.                     }
  80.                     if ($mes_pago == 11) {
  81.                         $Noviembre++;
  82.                     }
  83.                     if ($mes_pago == 12) {
  84.                         $Diciembre++;
  85.                     }
  86.                 }
  87.                
  88.             }
  89.            
  90.             $textos = array(
  91.                 "Enero",
  92.                 "Febrero",
  93.                 "Marzo",
  94.                 "Abril",
  95.                 "Mayo",
  96.                 "Junio",
  97.                 "Julio",
  98.                 "Agosto",
  99.                 "Septiembre",
  100.                 "Octubre",
  101.                 "Noviembre",
  102.                 "Diciembre"
  103.             );
  104.             $datos  = array(
  105.                 $Enero,
  106.                 $Febrero,
  107.                 $Marzo,
  108.                 $Abril,
  109.                 $Mayo,
  110.                 $Junio,
  111.                 $Julio,
  112.                 $Agosto,
  113.                 $Septiembre,
  114.                 $Octubre,
  115.                 $Noviembre,
  116.                 $Diciembre
  117.             );
  118.            
  119.             $grafico = new Graph(500, 400, 'auto');
  120.             $grafico->SetScale("textlin");
  121.            
  122.             $theme = new UniversalTheme;
  123.             $grafico->SetTheme($theme);
  124.             $grafico->title->Set("Cantidad de deudores por mes");
  125.            
  126.             $grafico->Set90AndMargin(80, 40, 60, 40);
  127.             $grafico->img->SetAngle(90);
  128.            
  129.             $grafico->yaxis->scale->SetGrace(20);
  130.  
  131.             $grafico->xaxis->title->Set("");
  132.             $grafico->yaxis->title->Set("");           
  133.             $grafico->title->SetFont(FF_FONT1,FS_BOLD);
  134.             $grafico->yaxis->title->SetFont(FF_FONT1,FS_BOLD);
  135.             $grafico->xaxis->title->SetFont(FF_FONT1,FS_BOLD);
  136.             $grafico->xaxis->SetTickLabels($textos);
  137.            
  138.             $grafico->footer->center->Set('Monto total : $' . $monto_total);
  139.  
  140.     $barplot1 = new BarPlot($datos);
  141.     $barplot1->SetWeight(0);
  142.     $barplot1->SetFillGradient("#BE81F7", "#E3CEF6", GRAD_HOR);
  143.     $barplot1->SetWidth(17);
  144.     $barplot1->value->SetFormat($montos);
  145.     $barplot1->value->Show();
  146.     $barplot1->value->HideZero(true);
  147.     $barplot1->value->SetFont(FF_FONT1,FS_BOLD);
  148.     $barplot1->SetValuePos('center');
  149.      
  150.     $accbplot = new AccBarPlot(array($barplot1));
  151.     $accbplot->SetWeight(0);
  152.     $accbplot->SetFillGradient("#BE81F7", "#E3CEF6", GRAD_HOR);
  153.     $accbplot->SetWidth(17);
  154.     $accbplot->value->HideZero(true);
  155.     $accbplot->value->SetFont(FF_FONT1,FS_BOLD);
  156.     $accbplot->SetValuePos('center');
  157.     $accbplot->value->Show();
  158.     $grafico->Add($accbplot);
  159.     $grafico->Stroke();
  160.  
  161.         }

Y me devuelve todo como al principio :



La idea es que en vez de 3.0 u otros datos al costado de cada barra , tiene que ser los datos del array $montos , todo esto es sin dejar de usar el array $datos como valor principal que es los numeros que estan en la parte de arriba del grafico , ese es el gran problema que me pidieron en el trabajo de mi tesis y no me sale , otra cosa rara es que no puedo centrar el 3.0 cosa que antes si podia.

Saludos.