Ejemplo n.º 1
0
 function grafico($anio = '')
 {
     $this->load->library('Graph');
     if (empty($anio)) {
         return;
     }
     $fechai = $anio . '0101';
     $fechaf = $anio . '1231';
     $mSQL = "SELECT a.vd, LEFT(b.nombre, 8)as nombre2,                                            \n\t\t sum(a.totalg*IF(a.tipo_doc='D', -1, 1)) AS grantotal,                              \n\t\t sum(a.totalg*(a.referen IN ('E', 'M'))*IF(a.tipo_doc='D', -1, 1)) AS contado,        \n\t\t sum(a.totalg*(a.referen NOT IN ('E', 'M'))*IF(a.tipo_doc='D', -1, 1)) AS credito     \n\t\t FROM sfac AS a \n\t\t JOIN vend AS b  ON a.vd=b.vendedor                                                                   \n\t\t WHERE a.tipo_doc<>'X' AND a.fecha>='{$fechai}' AND a.fecha<='{$fechaf}'                  \n\t\t GROUP BY a.vd ORDER BY a.vd,grantotal DESC LIMIT 10";
     $maxval = 0;
     $query = $this->db->query($mSQL);
     $data_1 = $data_2 = $data_3 = $vendedor = array();
     foreach ($query->result() as $row) {
         if ($row->grantotal > $maxval) {
             $maxval = $row->grantotal;
         }
         $nombre[] = $row->nombre2;
         $vendedor[] = $row->vd;
         $data_1[] = $row->contado;
         $data_2[] = $row->credito;
         $data_3[] = $row->grantotal;
     }
     $om = 1;
     while ($maxval / $om > 100) {
         $om = $om * 10;
     }
     $bar_1 = new bar(75, '#0053A4');
     $bar_2 = new bar(75, '#9933CC');
     $bar_3 = new bar(75, '#639F45');
     $bar_1->key('Contado', 10);
     $bar_2->key('Credito', 10);
     $bar_3->key('Total', 10);
     for ($i = 0; $i < count($data_1); $i++) {
         $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.')));
         $bar_2->add_data_tip($data_2[$i] / $om, graph::esc(number_format($data_2[$i], 2, ',', '.')));
         $bar_3->add_data_tip($data_3[$i] / $om, graph::esc(number_format($data_3[$i], 2, ',', '.')));
         $bar_1->links[] = site_url("/ventas/vendedoresmensuales/index/{$anio}/" . $vendedor[$i]);
         $bar_2->links[] = site_url("/ventas/vendedoresmensuales/index/{$anio}/" . $vendedor[$i]);
         $bar_3->links[] = site_url("/ventas/vendedoresmensuales/index/{$anio}/" . $vendedor[$i]);
     }
     $g = new graph();
     $g->title('Los 10 vendedores con los indice de ventas m&aacute;s altos en el a&ntilde;o' . $anio, '{font-size: 22px; color:##00264A}');
     $g->set_is_decimal_separator_comma(1);
     $g->data_sets[] = $bar_1;
     $g->data_sets[] = $bar_2;
     $g->data_sets[] = $bar_3;
     $g->set_x_labels($nombre);
     $g->set_x_label_style(10, '#000000', 3, 1);
     $g->set_x_axis_steps(10);
     $g->set_x_legend('Vendedores', 14, '#004381');
     $g->bg_colour = '#FFFFFF';
     $g->set_tool_tip('#key#<br>Vendedor: #x_label# <br>Monto: #tip#');
     $g->set_y_max(ceil($maxval / $om));
     $g->y_label_steps(5);
     $g->set_y_legend('Ventas x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381');
     echo utf8_encode($g->render());
 }
Ejemplo n.º 2
0
 function mkCacheData($date_from, $date_to, $product_id)
 {
     $conditions = array();
     $info = $this->dbstuff->GetRow("SELECT * FROM " . $this->table_prefix . "products WHERE id='" . $product_id . "'");
     if (!empty($info)) {
         $_GET['pn'] = $info['name'];
     }
     $mdt = date("Ymd") . "_" . substr(md5($_GET['pn'] . $_GET['ds'] . $_GET['de']), 0, 6);
     $file_item = $mdt;
     $file_path = DATA_PATH . "tmp/" . $file_item . $this->cache_ext;
     if (!file_exists($file_path)) {
         // use the chart class to build the chart:
         include_once LIB_PATH . 'ofc/chart.php';
         $g = new graph();
         $result = $this->dbstuff->GetArray("SELECT DATE_FORMAT(FROM_UNIXTIME(created),'%m') as mn,avg(max_price) AS avmax,avg(min_price) AS avmin FROM " . $this->table_prefix . "quotes WHERE product_id=" . $product_id . " AND created BETWEEN {$date_from} AND {$date_to} group by mn ORDER BY created ASC");
         if (!empty($result)) {
             foreach ($result as $val) {
                 $data[] = floor(($val['avmax'] + $val['avmin']) / 2);
             }
             $title = L("stat_charts", "tpl") . $_GET['ds'] . L("arrive_to", "tpl") . $_GET['de'];
         } elseif ($info['name']) {
             $title = $info['name'];
         } else {
             $title = L("data_not_exists") . df();
         }
         $g->title($title, '{font-size: 24px;color: #0000FF}');
         $g->set_data($data);
         $g->line_hollow(2, 4, '0x80a033', $_GET['pn'], 10);
         // label each point with its value
         //$g->set_x_labels( explode(",", L("months", "tpl")) );
         $x_result = $this->dbstuff->GetArray("select CONCAT(FROM_UNIXTIME(created, '%Y'),'/',FROM_UNIXTIME(created, '%m')) as m from " . $this->table_prefix . "quotes WHERE created BETWEEN {$date_from} AND {$date_to} group by DATE_FORMAT(FROM_UNIXTIME(created),'%m') ORDER BY created ASC");
         foreach ($x_result as $val) {
             $x_tmp[] = $val['m'];
         }
         $g->set_x_labels($x_tmp);
         $label_y = $this->dbstuff->GetRow("select max(max_price) as price_max,min(min_price) as price_min from " . $this->table_prefix . "quotes WHERE product_id=" . $product_id . " AND created BETWEEN {$date_from} AND {$date_to}");
         $y_max = !empty($label_y['price_max']) ? $label_y['price_max'] : 100;
         // set the Y max
         $this->max_price = $label_y['price_max'];
         $this->min_price = $label_y['price_min'];
         $g->set_y_max($label_y['price_max']);
         // label every 20 (0,20,40,60)
         $g->y_label_steps(6);
         // display the data
         file_put_contents($file_path, $g->render());
     }
     $this->cache_datafile = $file_item . $this->cache_ext;
 }
Ejemplo n.º 3
0
 function grafico($titulo)
 {
     $this->load->library('Graph');
     $mSQL_1 = "SELECT cod_cli,nombre,   \r\n\t\t\tsum(totalg*IF(tipo_doc='D', -1, 1)) AS grantotal, \r\n\t\t\tsum(totalg*(referen IN ('E', 'M'))*IF(tipo_doc='D', -1, 1)) AS contado,\r\n\t\t\tsum(totalg*(referen NOT IN ('E', 'M'))*IF(tipo_doc='D', -1, 1)) AS credito \r\n\t\t\tFROM sfac\r\n\t\t\tWHERE tipo_doc<>'X' AND fecha>='20070101' AND fecha<='20071231' \r\n\t\t\tGROUP BY cod_cli ORDER BY grantotal DESC LIMIT 10";
     // generate some random data
     srand((double) microtime() * 1000000);
     $bar_1 = new bar_fade(50, '#209B2C');
     $bar_1->key('Contado', 10);
     $bar_2 = new bar_fade(50, '#9933CC');
     $bar_2->key('Credito', 10);
     $bar_3 = new bar_fade(50, '#639F45');
     $bar_3->key('Total', 10);
     $maxval = 0;
     $label = $tips = array();
     $query = $this->db->query($mSQL_1);
     foreach ($query->result() as $row) {
         if ($row->grantotal > $maxval) {
             $maxval = $row->grantotal;
         }
         $bar_1->data[] = $row->contado;
         $bar_2->data[] = $row->credito;
         $bar_3->data[] = $row->grantotal;
         //$bar_1->tips = $data_tips_3;
         $tips[] = $row->nombre;
         $label[] = $row->cod_cli;
     }
     $g = new graph();
     $g->title($titulo, '{font-size: 26px;}');
     $g->data_sets[] = $bar_1;
     $g->data_sets[] = $bar_2;
     $g->data_sets[] = $bar_3;
     $g->set_x_labels($label);
     $g->set_x_label_style(10, '#9933CC', 2, 1);
     $g->set_x_axis_steps(10);
     $g->bg_colour = '#FFFFFF';
     $g->set_tool_tip('#key#<br>Codigo de Clinte: #x_label# <br>Monto: #tip#');
     $g->tips = $tips;
     $g->set_y_max($maxval);
     $g->y_label_steps(3);
     $g->set_y_legend('Open Flash Chart', 12, '0x736AFF');
     echo utf8_encode($g->render());
 }
Ejemplo n.º 4
0
function return_ofc_day()
{
    global $cms, $ps;
    $styles =& $cms->theme->styles;
    $days = array();
    $labels = array();
    $data = array();
    $data_avg = array();
    $sum = 0;
    $avg = 0;
    $max = 31;
    $maxlimit = 100;
    // get the last 31 days of data
    $list = $ps->db->fetch_rows(1, "SELECT statdate,SUM(connections) connections " . "FROM {$ps->t_map_data} " . "GROUP BY statdate " . "ORDER BY statdate DESC LIMIT {$max}");
    $now = $list ? ymd2time($list[0]['statdate']) : time();
    while (count($days) < $max) {
        $days[date('Y-m-d', $now)] = 'null';
        $labels[] = date('M jS', $now);
        $now -= 60 * 60 * 24;
    }
    $days = array_reverse($days);
    $labels = array_reverse($labels);
    // build our data and labels
    $data = $days;
    $maxdata = 0;
    foreach ($list as $d) {
        if (!array_key_exists($d['statdate'], $days)) {
            continue;
        }
        $sum += $d['connections'];
        $data[$d['statdate']] = $d['connections'];
        $maxdata = max($maxdata, $d['connections']);
    }
    if ($data) {
        $avg = $sum / count($data);
        $data_avg[] = $avg;
        $data_avg = array_pad($data_avg, count($data), 'null');
        $data_avg[] = $avg;
        #		$data_avg = array_pad(array(), count($data), $avg);
        $maxlimit = ceil(ceil($maxdata / 100) * 100);
    }
    include_once PS_ROOTDIR . '/includes/ofc/open-flash-chart.php';
    $g = new graph();
    $g->bg_colour = $styles->val('flash.conn.bgcolor', 'flash.bgcolor');
    $g->title($styles->val('flash.conn.title', $cms->trans('Daily Connections'), true), '{' . $styles->val('flash.conn.title.style', 'font-size: 16px', true) . '}');
    #	$g->set_data($data_avg);
    #	$g->line(1, '#9999ee', 'Average Connections', 9);
    #	$g->set_data($data);
    ##	$g->line_hollow(1, 3, '#5555ff', 'Connections', 9);
    #	$g->bar(75, '#5555ff', 'Connections', 9);
    $avg_line = new line($styles->val('flash.conn.line.width'), $styles->val('flash.conn.line.color'));
    $avg_line->key($styles->val('flast.conn.line.key', $cms->trans('Average Connections'), true), $styles->val('flash.conn.line.size', 9, true));
    $avg_line->data = $data_avg;
    $conn_bar = new bar_3d($styles->val('flash.conn.bar3d.opacity', 75, true), $styles->val('flash.conn.bar3d.color1', '#5555ff', true), $styles->val('flash.conn.bar3d.color2', '#3333DD', true));
    $conn_bar->key($styles->val('flash.conn.bar3d.key', $cms->trans('Connections'), true), $styles->val('flash.conn.bar3d.size', 9, true));
    $conn_bar->data = $data;
    /*
    	$keys = array_keys($data);
    	for ($i=0; $i<count($data); $i++) {
    		$conn_bar->add_data_tip($data[$keys[$i]], 
    			$cms->trans("Connections: %d", $data[$keys[$i]]) . "<br>" . 
    			$cms->trans("Average: %d", $data_avg[0])
    		);
    	}
    /**/
    $g->set_tool_tip(sprintf($styles->val('flash.conn.tooltip', '#x_label#<br>#key#: #val# (' . $cms->trans('Avg') . ': %d)', true), round($data_avg[0])));
    $g->data_sets[] = $avg_line;
    $g->data_sets[] = $conn_bar;
    $g->set_x_axis_3d(6);
    // label each point with its value
    $g->set_x_labels($labels);
    //	$g->set_x_axis_steps(count($labels) / 3 + 1);
    //	$g->set_x_tick_size(1);
    $g->set_x_label_style(10, '#000000', 0, 3, '#cccccc');
    //	$g->set_x_label_style('none');
    #	$g->set_x_label_style( 8, '#000000', 2 );
    $g->set_inner_background(coalesce($styles->val('flash.conn.bg_inner1', 'flash.bg_inner1'), '#E3F0FD'), coalesce($styles->val('flash.conn.bg_inner2', 'flash.bg_inner2'), '#CBD7E6'), coalesce($styles->val('flash.conn.bg_inner_angle', 'flash.bg_inner_angle'), 90));
    $g->x_axis_colour('#909090', '#ADB5C7');
    //	$g->x_axis_colour('#eeeeee', '#eeeeee');
    $g->y_axis_colour('#5555ff', '#eeeeee');
    //	$g->set_x_offset( false );
    // set the Y max
    $g->set_y_min(0);
    $g->set_y_max($maxlimit);
    $g->set_y_legend($styles->val('flash.conn.bar3d.key', $cms->trans('Connections')), 12, $styles->val('flash.conn.bar3d.color1', '#5555ff', true));
    print $g->render();
}
Ejemplo n.º 5
0
 function gproducto($anio = '', $depto = '', $fami = '', $grupo = '')
 {
     $this->load->library('Graph');
     if (empty($anio)) {
         return;
     }
     $fechai = $anio . '0101';
     $fechaf = $anio . '1231';
     $mSQL = "SELECT a.codigo,a.depto,a.familia,a.grupo,e.descrip as nombre,\n\t\tSUM(a.monto) AS grantotal,  \n\t\tSUM(a.costo) AS costo,      \n\t\tSUM(a.cantidad) AS cantidad,\n\t\tSUM(a.monto)-SUM(a.costo) AS ganancia\n\t\tFROM  est_item AS a\n\t\tJOIN  maes AS e ON a.codigo= e.codigo\n\t\tWHERE a.fecha>='{$fechai}' AND a.fecha<='{$fechaf}' AND a.depto='{$depto}' AND a.familia='{$fami}' AND a.grupo='{$grupo}'\n\t\tGROUP BY a.codigo LIMIT 10";
     //echo $mSQL;
     $maxval = 0;
     $query = $this->db->query($mSQL);
     foreach ($query->result() as $row) {
         if ($row->grantotal > $maxval) {
             $maxval = $row->grantotal;
         }
         $nombre[] = $row->nombre;
         $famili = $row->famili;
         $dpto = $row->dpto;
         $grup = $row->grup;
         $data_1[] = $row->grantotal;
         $data_2[] = $row->ganancia;
     }
     $om = 1;
     while ($maxval / $om > 100) {
         $om = $om * 10;
     }
     $bar_1 = new bar_fade(55, '#C31812');
     $bar_2 = new bar_fade(55, '#424581');
     $bar_1->key('Total', 10);
     $bar_2->key('Ganancias', 10);
     for ($i = 0; $i < count($data_1); $i++) {
         $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.')));
         $bar_2->add_data_tip($data_2[$i] / $om, graph::esc(number_format($data_2[$i], 2, ',', '.')));
     }
     $g = new graph();
     $g->set_is_decimal_separator_comma(1);
     if ($maxval > 0) {
         $g->title('Ventas de el a&ntilde;o ' . $anio, '{font-size: 16px; color:#0F3054}');
         $g->data_sets[] = $bar_1;
         $g->data_sets[] = $bar_2;
         $g->set_x_labels($nombre);
         $g->set_x_label_style(10, '#000000', 2, 1);
         $g->set_x_axis_steps(10);
         $g->set_x_legend('Productos', 14, '#004381');
         $g->bg_colour = '#FFFFFF';
         $g->set_tool_tip('#key#<br>Producto: #x_label# <br>Monto: #tip#');
         $g->set_y_max(ceil($maxval / $om));
         $g->y_label_steps(5);
         $g->set_y_legend('Ventas x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381');
     } else {
         $g->title('No existen ventas en el a&ntilde;o seleccionado', '{font-size:18px; color: #d01f3c}');
     }
     $g->bg_colour = '#FFFFFF';
     echo utf8_encode($g->render());
 }
Ejemplo n.º 6
0
<?php
include_once( 'classes/open-flash-chart.php' );

$data = $_REQUEST['d'];
$labels = $_REQUEST['l'];
$title = $_REQUEST['title'];
$type  = $_REQUEST['type'];
$sort  = $_REQUEST['sort'];

$resubmit = $PHP_SELF . "?" .  $_SERVER['QUERY_STRING'];

$g = new graph();
$g->title( $title, '{font-size: 18px; color: #A0A0A0;}' );
$g->set_inner_background( '#E3F0FD', '#CBD7E6', 90 );
$g->bg_colour = '#FFFFFF';

if ($sort == true){
	array_multisort($labels,$data);
}  

if ($type == 'line'){

	$g->set_data($data);
	$g->line_hollow( 2, 4, '#5E83BF', 'Documentos', 10 );

	$g->set_x_labels($labels);
	$g->set_x_label_style( 10, '0x000000', 0, 2 );

	$g->set_y_max( max($data) );
	$g->y_label_steps(4);
Ejemplo n.º 7
0
 function gmensuales($mes = '', $anio = '')
 {
     $this->load->library('Graph');
     $this->lang->load('calendar');
     if (empty($anio) or empty($mes)) {
         return;
     }
     $fechai = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01';
     $fechaf = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31';
     $mSQL = "SELECT DAYOFMONTH(fecha)AS dia,\r\n    SUM(monto)AS grantotal\r\n    FROM  pres \r\n    WHERE fecha>='{$fechai}' AND fecha<='{$fechaf}'\r\n    GROUP BY fecha";
     //echo $mSQL;
     $maxval = 0;
     $query = $this->db->query($mSQL);
     foreach ($query->result() as $row) {
         if ($row->grantotal > $maxval) {
             $maxval = $row->grantotal;
         }
         $fecha[] = $row->dia;
         $data_1[] = $row->grantotal;
     }
     $om = 1;
     while ($maxval / $om > 100) {
         $om = $om * 10;
     }
     $bar_1 = new bar(75, '#329B98');
     $bar_1->key('Total', 10);
     for ($i = 0; $i < count($data_1); $i++) {
         $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.')));
     }
     $g = new graph();
     $g->set_is_decimal_separator_comma(1);
     if ($maxval > 0) {
         $g->title('Prestamos de el mes ' . $mes . '/' . $anio, '{font-size: 16px; color:#0F3054}');
         $g->data_sets[] = $bar_1;
         $g->set_x_labels($fecha);
         $g->set_x_label_style(10, '#000000', 3, 1);
         $g->set_x_axis_steps(10);
         $g->set_x_legend('Dias', 16, '#004381');
         $g->bg_colour = '#FFFFFF';
         $g->set_tool_tip('#key#<br>Dia: #x_label# <br>Monto: #tip#');
         $g->set_y_max(ceil($maxval / $om));
         $g->y_label_steps(5);
         $g->set_y_legend('Prestamos x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381');
     } else {
         $g->title('No existen prestamos con los datos seleccionados', '{font-size:18px; color: #d01f3c}');
     }
     $g->bg_colour = '#FFFFFF';
     echo utf8_encode($g->render());
 }
Ejemplo n.º 8
0
 function grafico($codigo = '', $mes = '', $anio = '')
 {
     $this->load->library('Graph');
     if (empty($mes) and empty($anio)) {
         return;
     }
     $fechad = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01';
     $fechah = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31';
     $mSQL = "SELECT DATE_FORMAT(fecha, '%d')as fecha, codigo, sum(cantidad) cantidad, IF(sum(cantidad)<=salcant,sum(cantidad),salcant)*(salcant>0)as salcant \n\t\tFROM costos \n\t\tWHERE codigo='{$codigo}' AND fecha>='{$fechad}' AND fecha<='{$fechah}' AND origen='3I'\n\t\tGROUP BY fecha HAVING cantidad>0";
     echo $mSQL;
     $maxval = 0;
     $query = $this->db->query($mSQL);
     foreach ($query->result() as $row) {
         if ($row->cantidad > $maxval) {
             $maxval = $row->cantidad;
         }
         $fecha[] = $row->fecha;
         $codigo = $row->codigo;
         $data_1[] = $row->cantidad;
         $data_2[] = $row->salcant;
     }
     $fechadd = dbdate_to_human($fechad);
     $fechahh = dbdate_to_human($fechah);
     $nombre = $this->datasis->dameval("SELECT descrip FROM sinv WHERE codigo='{$codigo}'");
     $om = 1;
     while ($maxval / $om > 100) {
         $om = $om * 10;
     }
     $bar_1 = new bar_glass(55, '#D54C78', '#C31812');
     $bar_1->key('Ventas', 10);
     $bar_2 = new line_dot(3, 5, '#0066CC', 'Downloads', 10);
     $bar_2->key('Existencias', 10);
     for ($i = 0; $i < count($data_1); $i++) {
         $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.')));
         $bar_2->add_data_tip($data_2[$i] / $om, graph::esc(number_format($data_2[$i], 2, ',', '.')));
         //  $bar_1->links[]= site_url("/inventario/gproductos/mensuales/$anio/".str_replace('/',':slach:',$proveed[$i]));
         //  $bar_1->links[]= site_url("/inventario/gproductos/mensuales/$anio/".raencode($proveed[$i]));
     }
     $g = new graph();
     $g->set_is_decimal_separator_comma(1);
     if ($maxval > 0) {
         $g->title('Grafico de ' . $nombre . ' Desde ' . $fechadd . ' Hasta ' . $fechahh, '{font-size: 16px; color:#0F3054}');
         $g->data_sets[] = $bar_1;
         $g->data_sets[] = $bar_2;
         $g->set_x_labels($fecha);
         $g->set_x_label_style(10, '#000000', 2, 1);
         $g->set_x_axis_steps(10);
         $g->set_x_legend('Fecha', 14, '#004381');
         $g->bg_colour = '#FFFFFF';
         $g->set_tool_tip('#key#<br>Fecha: #x_label# <br>Cantidad: #tip#');
         $g->set_y_max(ceil($maxval / $om));
         $g->y_label_steps(5);
         //$g->set_y_legend('Ventas x '.number_format($om,0,'','.').' (Bs)', 16, '#004381' );
     } else {
         $g->title('No existen datos con la informacion seleccionada', '{font-size:18px; color: #d01f3c}');
     }
     $g->bg_colour = '#FFFFFF';
     echo utf8_encode($g->render());
 }
 /**
  * action_admin_return_ofc_hitrates()
  *
  * the function returns dynamic data (hitrate of apc) and visualizes an piechart with ofc.
  * function consists of 4 segments:
  * (1) get data
  * (2) init ofc
  * (3) draw the chart
  * (4) render it
  *
  * @return dynamic data for an open flash chart
  */
 public function action_admin_return_ofc_hitrates()
 {
     /**
      * (1) get DATA for Visualization
      */
     // get apc cache
     $cache_apc = Clansuite_Cache_Factory::getCache('apc');
     $apc_stats = $cache_apc->stats();
     // debug display of the stats data
     // var_dump($apc_stats);
     // setup the data array
     $data = array();
     $data[] = $apc_stats['cache_info']['num_hits'];
     $data[] = $apc_stats['cache_info']['num_misses'];
     /**
      * (2) initialize Open Flash Chart
      */
     include 'libraries/open-flash-chart/php-ofc-library/open-flash-chart.php';
     $g = new graph();
     /**
      * (3) draw the ofc chart
      */
     // title
     $g->title('APC Hitrate', '{font-size:18px; color: #d01f3c}');
     // ok, now draw one piece of the pie :)
     $g->pie(60, '#505050', '{font-size: 11px; color: #404040;');
     /**
      * we have to pass in 2 arrays
      * (1) $data
      * (2) labels for the data
      */
     $g->pie_values($data, array('Hits', 'Misses'));
     // colours for each slice (hits = green, misses = red)
     $g->pie_slice_colours(array('#acb132', '#d01f3c'));
     // mouseover tooltip displayes the values
     $g->set_tool_tip('#val#');
     /**
      * (4) output/generate the dynamic data for the swf
      */
     echo $g->render();
     // eject here unnicely, because of headers exist error
     // @todo debug and find out, where after $g->render any output is done
     exit;
 }
Ejemplo n.º 10
0
 function gproducto($anio = '', $departamento = '', $linea = '', $grupo = '')
 {
     $this->load->library('Graph');
     $this->load->library('calendar');
     //$this->calendar->generate();
     if (empty($anio) or empty($departamento) or empty($linea) or empty($grupo)) {
         return;
     }
     $fechai = $anio . '0101';
     $fechaf = $anio . '1231';
     $mSQL = "SELECT a.fecha,b.codigo,b.descrip AS nnombre,LEFT(b.descrip,20)AS nombre,e.depto,e.descrip,d.linea,d.descrip,b.grupo,b.descrip,c.nom_grup as ngrupo,\n    SUM(a.promedio*a.cantidad) AS costo,\n    SUM(a.venta) AS ventas,\n    SUM(a.venta)-SUM(a.promedio*a.cantidad) AS ganancias\n    FROM {$this->from} ";
     foreach ($this->join as $valor) {
         $mSQL .= "{$valor['2']} JOIN {$valor['0']} ON {$valor['1']}";
     }
     $mSQL .= " WHERE a.origen IN ('3I','3M') AND a.fecha>='{$fechai}' AND a.fecha<='{$fechaf}' AND e.depto='{$departamento}' AND d.linea='{$linea}' AND b.grupo='{$grupo}'\n    GROUP BY a.codigo ORDER BY ganancias DESC LIMIT 15";
     //echo $mSQL;
     $maxval = 0;
     $query = $this->db->query($mSQL);
     foreach ($query->result() as $row) {
         if ($row->ganancias > $maxval) {
             $maxval = $row->ganancias;
         }
         $nombre[] = $row->nombre;
         $data_1[] = $row->ganancias;
     }
     $ngrupo = $row->ngrupo;
     $om = 1;
     while ($maxval / $om > 100) {
         $om = $om * 10;
     }
     $bar_1 = new bar(75, '#639F45');
     $bar_1->key('Ganancias', 10);
     for ($i = 0; $i < count($data_1); $i++) {
         $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.')));
         //$bar_1->links[]= site_url("ventas/gananciasproducto/index/$anio/$departamento/".$linea[$i]);
     }
     $g = new graph();
     $g->set_is_decimal_separator_comma(1);
     if ($maxval > 0) {
         $g->title('Ganancias por producto de el grupo ' . $ngrupo . ' en el a&ntilde;o ' . $anio, '{font-size: 16px; color:#0F3054}');
         $g->data_sets[] = $bar_1;
         $g->set_x_axis_3d(5);
         $g->x_axis_colour('#909090', '#ADB5C7');
         $g->set_x_labels($nombre);
         $g->set_x_label_style(10, '#000000', 2, 1);
         $g->set_x_axis_steps(10);
         $g->set_x_legend('Productos', 14, '#004381');
         $g->y_axis_colour('#909090', '#ADB5C7');
         $g->bg_colour = '#FFFFFF';
         $g->set_tool_tip('#key#<br>Producto: #x_label# <br>Monto: #tip#');
         $g->set_y_max(ceil($maxval / $om));
         $g->y_label_steps(5);
         $g->set_y_legend('Ganancia x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381');
     } else {
         $g->title('No existen ganancias con los datos seleccionados', '{font-size:18px; color: #d01f3c}');
     }
     $g->bg_colour = '#FFFFFF';
     echo utf8_encode($g->render());
 }
Ejemplo n.º 11
0
        $t[2] = 0;
    }
    $bar_green->data[] = $t[2];
    if ($t[0] > $tmax) {
        $tmax = $t[0];
    }
    if ($t[1] > $tmax) {
        $tmax = $t[1];
    }
    if ($t[2] > $tmax) {
        $tmax = $t[2];
    }
}
// create the graph object:
$g = new graph();
$g->title('Statystyka rozmów', '{font-size:15px; color: #FFFFFF; margin: 5px; background-color: #505050; padding:5px; padding-left: 20px; padding-right: 20px;}');
//$g->set_data( $data_1 );
//$g->bar_3D( 75, '#D54C78', '2006', 10 );
//$g->set_data( $data_2 );
//$g->bar_3D( 75, '#3334AD', '2007', 10 );
$g->data_sets[] = $bar_red;
$g->data_sets[] = $bar_blue;
$g->data_sets[] = $bar_green;
// $g->set_x_axis_3d( 3 );
$g->x_axis_colour('#909090', '#ADB5C7');
$g->y_axis_colour('#909090', '#ADB5C7');
$g->set_x_labels($x_labels);
$g->set_x_label_style(10, 'black', 1);
$g->set_y_max($tmax);
$g->y_label_steps(5);
$g->set_y_legend('Ilosc sekund', 12, '#736AFF');
Ejemplo n.º 12
0
 /**
  * Generates report of projects created
  *
  * @access	public
  * @param	nil
  * @return	void
  */
 function projectsCreated()
 {
     //Load Language File For this
     $this->lang->load('enduser/reports', $this->config->item('language_code'));
     //Load Library File
     $this->load->library('graph');
     // generate some random data
     srand((double) microtime() * 1000000);
     // NOTE: how we are filling 3 arrays full of data,
     //       one for each line on the graph
     $data_1 = array();
     $mon = array();
     for ($i = 0; $i < 6; $i++) {
         $lastmonth = mktime(0, 0, 0, date("m") - $i, date("d"), date("Y"));
         $month = date('n', $lastmonth);
         $year = date('Y', $lastmonth);
         $data_1[] = $this->skills_model->getNumProjectsByMonth($month, $year);
         $mon[] = date('M', $lastmonth);
     }
     $g = new graph();
     $g->title($this->lang->line('Projects added last 6 months'), '{font-size: 20px; color: #999999}');
     // we add 2 sets of data:
     $g->set_data($data_1);
     $g->set_bg_colour('0xFFFFFF');
     // we add the 3 line types and key labels
     $g->line_dot(3, 5, 'FF6633', 'Projects', 12);
     // <-- 3px thick + dots
     $g->set_x_labels($mon);
     $g->set_x_label_style(10, '0x000000', 0, 1);
     $g->set_y_max(50);
     $g->y_label_steps(4);
     echo $g->render();
 }
Ejemplo n.º 13
0
 /**
  */
 function chart_flash($data, $params)
 {
     if (empty($data)) {
         return;
     }
     include_once YF_PATH . 'libs/yf_open_flash_chart/open-flash-chart.php';
     $width = isset($params['width']) ? $params['width'] : '90%';
     $height = isset($params['height']) ? $params['height'] : '90%';
     $g = new graph();
     $g->js_path = isset($params['js_path']) ? $params['js_path'] : '/js/';
     $g->swf_path = isset($params['swf_path']) ? $params['swf_path'] : '/js/';
     $g->title(' ', '{font-size: 20px;}');
     $g->bg_colour = '#e9e9e9';
     $g->x_axis_colour('#000000', '#c1c1c1');
     $g->y_axis_colour('#000000', '#c1c1c1');
     $g->set_data($data);
     // Find maximal strlen of x axis label
     foreach ((array) $data as $k => $v) {
         $xlabel_len[] = _strlen($k);
     }
     if (max($xlabel_len) > 7) {
         $orientation = 2;
     } else {
         $orientation = 0;
     }
     $g->set_x_labels(array_keys($data));
     $g->set_x_label_style(10, '#000000', $orientation, 2);
     $g->set_y_max(max($data));
     $g->set_y_label_style(10, '#000000', 0, 2);
     $g->set_y_legend('Price', 10, '#000000');
     $g->set_x_legend('Date', 10, '#000000');
     $g->set_tool_tip('#val# EUR on #x_label#');
     $g->line_dot(2, 3, '#0750D9', '', 10);
     // формат значений
     $g->set_num_decimals(0);
     $g->set_y_format('#val#&euro;');
     $g->set_width($width);
     $g->set_height($height);
     $g->set_output_type('js');
     return $g->render();
 }
Ejemplo n.º 14
0
 function grafico4($codigoadm, $partida)
 {
     $this->load->library('Graph');
     $mSQL = "SELECT codigopres,a.ordinal, \r\n\t\t\t\t\tSUM(asignacion+aumento-disminucion+traslados) as presupuesto, \r\n\t\t                        SUM(comprometido) comprometido, \r\n\t\t                        SUM(causado) causado, \r\n\t\t                        SUM(pagado) pagado\r\n\t\tFROM ordinal a JOIN ppla b ON a.codigopres=b.codigo\r\n\t\tWHERE b.movimiento='S' AND a.codigoadm='{$codigoadm}' AND codigopres LIKE '{$partida}%'\r\n\t\tGROUP BY codigopres,a.ordinal\r\n\t\tHAVING presupuesto<>0";
     $maxval = 0;
     $query = $this->db->query($mSQL);
     foreach ($query->result() as $row) {
         if ($row->presupuesto > $maxval) {
             $maxval = $row->presupuesto;
         }
         $codigopres[] = $row->ordinal;
         $data_1[] = $row->presupuesto;
         $data_2[] = $row->comprometido;
         $data_3[] = $row->causado;
         $data_4[] = $row->pagado;
     }
     $om = 1;
     while ($maxval / $om > 100) {
         $om = $om * 10;
     }
     $bar_1 = new bar(75, '#0053A4');
     $bar_2 = new bar(75, '#9933CC');
     $bar_3 = new bar(75, '#639F45');
     $bar_4 = new bar(75, '#C34F33');
     $bar_1->key('Presupuesto', 10);
     $bar_2->key('Comprometido', 10);
     $bar_3->key('Causado', 10);
     $bar_4->key('Pagado', 10);
     for ($i = 0; $i < count($data_1); $i++) {
         $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.')));
         $bar_2->add_data_tip($data_2[$i] / $om, graph::esc(number_format($data_2[$i], 2, ',', '.')));
         $bar_3->add_data_tip($data_3[$i] / $om, graph::esc(number_format($data_3[$i], 2, ',', '.')));
         $bar_4->add_data_tip($data_4[$i] / $om, graph::esc(number_format($data_4[$i], 2, ',', '.')));
     }
     $g = new graph();
     $g->set_is_decimal_separator_comma(1);
     if ($maxval > 0) {
         $g->data_sets[] = $bar_1;
         $g->data_sets[] = $bar_2;
         $g->data_sets[] = $bar_3;
         $g->data_sets[] = $bar_4;
         $g->set_x_labels($codigopres);
         $g->set_x_label_style(10, '#000000', 2, 1);
         $g->set_x_axis_steps(10);
         $g->set_x_legend('Presupuestos', 14, '#004381');
         $g->bg_colour = '#FFFFFF';
         $g->set_tool_tip('#key#<br>Codigo: #x_label# <br>Monto: #tip#');
         $g->set_y_max(ceil($maxval / $om));
         $g->y_label_steps(5);
         $g->set_y_legend('Presupuesto x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381');
     } else {
         $g->title('No existen Presupuestos', '{font-size:18px; color: #d01f3c}');
     }
     $g->bg_colour = '#FFFFFF';
     echo utf8_encode($g->render());
 }
Ejemplo n.º 15
0
 function gdiarias($anio = '', $producto = '', $mes = '')
 {
     $this->load->library('Graph');
     $this->lang->load('calendar');
     if (empty($anio)) {
         return;
     }
     $producto = radecode($producto);
     $fechai = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01';
     $fechaf = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31';
     //echo "fechai=".$fechai;
     //echo "fechaf=".$fechaf;
     $mSQL = "SELECT codigo, LEFT(descrip,20)AS nombre,DAYOFMONTH(a.fecha) as dia,\n    SUM(cantidad)AS cantidad,\n    SUM(importe)AS grantotal\n    FROM itscst  AS a\n    WHERE fecha>='{$fechai}' AND fecha<='{$fechaf}' AND codigo='{$producto}'\n    GROUP BY dia ORDER BY fecha";
     //echo $mSQL;
     $maxval = 0;
     $query = $this->db->query($mSQL);
     foreach ($query->result() as $row) {
         if ($row->grantotal > $maxval) {
             $maxval = $row->grantotal;
         }
         $fecha[] = $row->dia;
         $nombre = $row->nombre;
         $data_1[] = $row->grantotal;
     }
     $om = 1;
     while ($maxval / $om > 100) {
         $om = $om * 10;
     }
     $bar_1 = new bar(75, '#ADD8E6');
     $bar_1->key('Compras', 10);
     for ($i = 0; $i < count($data_1); $i++) {
         $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.')));
     }
     $g = new graph();
     $g->set_is_decimal_separator_comma(1);
     if ($maxval > 0) {
         $g->title('Compra de ' . $nombre . ' en el mes ' . $mes . '/' . $anio, '{font-size: 16px; color:##00264A}');
         $g->data_sets[] = $bar_1;
         $g->set_x_labels($fecha);
         $g->set_x_label_style(9, '#000000', 3, 1);
         $g->set_x_axis_steps(10);
         $g->x_axis_colour('#A6A6A6', '#ADB5C7');
         $g->set_x_legend('Dias', 16, '#004381');
         $g->bg_colour = '#FFFFFF';
         $g->set_tool_tip('#key#<br>Dia: #x_label# <br>Monto: #tip#');
         $g->set_y_max(ceil($maxval / $om));
         $g->y_label_steps(5);
         $g->y_axis_colour('#A6A6A6', '#ADB5C7');
         $g->set_y_legend('Compras x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381');
     } else {
         $g->title('No existen compras con los datos seleccionados', '{font-size:18px; color: #d01f3c}');
     }
     $g->bg_colour = '#FFFFFF';
     echo utf8_encode($g->render());
 }
Ejemplo n.º 16
0
 function gmensuales($anio = '', $dia = '')
 {
     $this->load->library('Graph');
     //$this->lang->load('calendar');
     //if (empty($mes) or empty($dia)) return;
     $fechai = $anio . '0101';
     $fechaf = $anio . '1231';
     $mSQL = "SELECT fecha,IF(WEEKDAY(fecha)=0,'Lunes',IF(WEEKDAY(fecha)=1,'Martes',IF(WEEKDAY(fecha)=2,'Miercoles',IF(WEEKDAY(fecha)=3,'Jueves',IF(WEEKDAY(fecha)=4,'Viernes',IF(WEEKDAY(fecha)=5,'Sabado','Domingo'))))))AS tdia,\n    DATE_FORMAT(fecha,'%m')AS mes,SUM(monto)AS grantotal,SUM(impuesto)AS IVA,SUM(transac)as transacciones \n\t\tFROM est_fecha WHERE fecha>='{$fechai}' AND fecha<='{$fechaf}'AND WEEKDAY(fecha)='{$dia}'\n\t\tGROUP BY  MONTH(fecha)\n\t\tORDER BY fecha ASC";
     //echo $mSQL;
     $maxval = 0;
     $query = $this->db->query($mSQL);
     foreach ($query->result() as $row) {
         if ($row->grantotal > $maxval) {
             $maxval = $row->grantotal;
         }
         $mes[] = $row->mes;
         $tdia = $row->tdia;
         $data_1[] = $row->grantotal;
     }
     $om = 1;
     while ($maxval / $om > 100) {
         $om = $om * 10;
     }
     $bar_1 = new bar_outline(50, '#56AC8B', '#3F7E66');
     $bar_1->key('Monto', 10);
     for ($i = 0; $i < count($data_1); $i++) {
         $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.')));
     }
     $g = new graph();
     $g->set_is_decimal_separator_comma(1);
     if ($maxval > 0) {
         $g->title('Ventas en el a&ntilde;o ' . $anio . ' del dia ' . $tdia, '{font-size: 16px; color:##00264A}');
         $g->data_sets[] = $bar_1;
         $g->x_axis_colour('#A6A6A6', '#ADB5C7');
         $g->set_x_labels($mes);
         $g->set_x_label_style(10, '#000000', 3, 1);
         $g->set_x_axis_steps(10);
         $g->set_x_legend('Mes', 14, '#004381');
         $g->bg_colour = '#FFFFFF';
         $g->set_tool_tip('#key#<br>Mes: #x_label# <br>Monto: #tip#');
         $g->set_y_max(ceil($maxval / $om));
         $g->y_label_steps(5);
         $g->y_axis_colour('#A6A6A6', '#ADB5C7');
         $g->set_y_legend('Ventas x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381');
     } else {
         $g->title('No existen ventas con los datos seleccionados', '{font-size:18px; color: #d01f3c}');
     }
     $g->bg_colour = '#FFFFFF';
     echo utf8_encode($g->render());
 }
Ejemplo n.º 17
0
    if (sizeof($oCat->getAllChildren($val)) == 0) {
        $links[] = "javascript:alert('Cette categorie n a pas de sous-categorie')";
    } else {
        $links[] = "./statsCompte.php?cat_id={$val}";
    }
}
$pie->pie_slice_colours($color);
$oSmarty->assign("DEBUG", $debug);
$pie->pie_values($data, $label, $links);
//
// Colours for each slice, in this case some of the colours
// will be re-used (3 colurs for 5 slices means the last two
// slices will have colours colour[0] and colour[1]):
//
$pie->set_tool_tip('#val#%');
$pie->set_width(650);
$pie->set_height(400);
$pie->title('Résumé sur l\'année', '{font-size:18px; color: #d01f3c}');
$pie->set_output_type('js');
$ofc2 = $pie->render();
/*************************************/
$oSmarty->assign("OFC", $ofc);
$oSmarty->assign("OFC2", $ofc2);
$oSmarty->assign("OFC3", $ofc3);
// stats
$chrono->stop();
$oSmarty->assign("TIME", $chrono->getTime());
$oSmarty->assign("REQUESTS", $mysql->nbRequest);
// Affichage du template après compilation
$oSmarty->debugging = false;
$oSmarty->display('statsCompte.html');
Ejemplo n.º 18
0
    case 'os':
        $sql = "SELECT LEFT(bots_t.os_version_bot, 3) val, count(loads_t.upId) num FROM bots_t, loads_t \n\t\t\t\tWHERE bots_t.id_bot = loads_t.fk_bot_id AND loads_t.fk_task_id = '{$tid}' AND loads_t.upStatus = '{$status}'\n\t\t\t\tGROUP BY val";
        break;
    case 'country':
        $sql = "SELECT country_t.name_country val, count(loads_t.upId) num FROM loads_t, bots_t, city_t, country_t \n\t\t\t\tWHERE bots_t.id_bot = loads_t.fk_bot_id AND bots_t.fk_city_bot = city_t.id_city AND city_t.fk_country_city =\n\t\t\t\tcountry_t.id_country  AND loads_t.fk_task_id = '{$tid}' AND loads_t.upStatus='{$status}' \n\t\t\t\tGROUP BY country_t.id_country  ORDER BY num DESC LIMIT 0, " . $db->config('stat_country_num');
        break;
}
$res = $db->query($sql);
if ($db->affected_rows > 0) {
    while ($mres = $res->fetch_array()) {
        $data[] = $mres['num'];
        if ($_GET['by'] == 'os') {
            $legend[] = get_os($mres['val']);
        } else {
            $legend[] = CountryCode($mres['val']);
        }
    }
}
if (!count($data)) {
    $data[] = 0;
    $legend[] = 'None';
}
$title = $_GET['status'] == 'good' ? 'Good' : 'Fail';
require_once ROOT_PATH . '/plugins/ofc/php-ofc-library/open-flash-chart.php';
$g = new graph();
$g->pie(60, '#505050', '{font-size: 12px; color: #404040;');
$g->pie_values($data, $legend);
$g->pie_slice_colours(array('#d01f3c', '#356aa0', '#C79810'));
$g->set_tool_tip('#x_label# - #val#');
$g->title($title, '{font-size:18px; color: #d01f3c}');
echo $g->render();
Ejemplo n.º 19
0
function return_ofc_data($styles)
{
    global $cms, $ps;
    $ofc = $cms->input['ofc'];
    $data = array();
    $data_avg = array();
    $avg = 0;
    $interval = 1000;
    $maxlimit = 1000;
    $minlimit = 0;
    $max = 21;
    $field = $ofc == 'skill' ? 'dayskill' : $ofc;
    if (!in_array($field, array('skill', 'kills', 'onlinetime'))) {
        $field = 'dayskill';
    }
    $plrid = $cms->input['id'];
    $ps->db->query("SELECT statdate,{$field} FROM {$ps->t_plr_data} WHERE plrid=" . $ps->db->escape($plrid, true) . " ORDER BY statdate DESC LIMIT {$max}");
    $i = 1;
    while (list($statdate, $skill) = $ps->db->fetch_row(0)) {
        $skill = round($skill);
        $sum += $skill;
        $data[] = $skill;
        $labels[] = $statdate;
    }
    if ($data) {
        $data = array_reverse($data);
        $labels = array_reverse($labels);
        $avg = $sum / count($data);
        $data_avg[] = $avg;
        $data_avg = array_pad($data_avg, count($data) - 1, 'null');
        // yes, 'null' is a string
        $data_avg[] = $avg;
        $minlimit = floor(min($data) / $interval) * $interval;
        $maxlimit = ceil(max($data) / $interval) * $interval;
    }
    include_once PS_ROOTDIR . '/includes/ofc/open-flash-chart.php';
    $g = new graph();
    $g->bg_colour = $styles->val('flash.plrskill.bgcolor', 'flash.bgcolor');
    $g->title($styles->val('flash.plrskill.title'), '{' . $styles->val('flash.plrskill.title.style', 'font-size: 12px', true) . '}');
    $g->set_data($data_avg);
    $g->set_data($data);
    $lines = $styles->attr('flash.plrskill.lines.line');
    $g->line(coalesce($lines[0]['width'], 1), coalesce($lines[0]['color'], '#9999ee'), coalesce($lines[0]['key'], $cms->trans('Average')), coalesce($lines[0]['key_size'], $styles->val('flash.plrskill.lines.key_size'), 9));
    $g->line(coalesce($lines[1]['width'], 1), coalesce($lines[1]['color'], '#9999ee'), coalesce($lines[1]['key'], $cms->trans('Skill')), coalesce($lines[1]['key_size'], $styles->val('flash.plrskill.lines.key_size'), 9));
    // label each point with its value
    $g->set_x_labels($labels);
    //	$g->set_x_axis_steps(count($labels) / 3 + 1);
    //	$g->set_x_tick_size(1);
    //	$g->set_x_label_style( 10, '0x000000', 0, 2 );
    //	$g->set_x_label_style('none');
    $g->set_x_label_style(8, '#000000', 2);
    $g->set_inner_background(coalesce($styles->val('flash.plrskill.bg_inner1', 'flash.bg_inner1'), '#E3F0FD'), coalesce($styles->val('flash.plrskill.bg_inner2', 'flash.bg_inner2'), '#CBD7E6'), coalesce($styles->val('flash.plrskill.bg_inner_angle', 'flash.bg_inner_angle'), 90));
    $g->x_axis_colour('#eeeeee', '#eeeeee');
    $g->y_axis_colour('#eeeeee', '#eeeeee');
    //	$g->set_x_offset( false );
    // set the Y max
    $g->set_y_max($maxlimit);
    $g->set_y_min($minlimit);
    // label every 20 (0,20,40,60)
    //	$g->x_label_steps( 2 );
    // display the data
    print $g->render();
}
Ejemplo n.º 20
0
                $tab["$name"][$i] += $valeur;
                $total["$name"] += $valeur;
            }
        }
 	}
}


/******************************************************************************/
// generate some random data:
die;
srand((double) microtime() * 1000000);
$max = 50;
$data = array();
for ($i = 0; $i < 12; $i++) {
    $data[] = rand(0, $max);
}
// use the chart class to build the chart:
include_once 'ofc-library/open-flash-chart.php';
$g = new graph();
// Spoon sales, March 2007
$g->title('Chaussures de Jie ' . date("Y"), '{font-size: 26px;}');
$g->set_data($data);
// label each point with its value
$g->set_x_labels(array('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'));
// set the Y max
$g->set_y_max(60);
// label every 20 (0,20,40,60)
$g->y_label_steps(6);
// display the data
echo $g->render();
Ejemplo n.º 21
0
#!/usr/bin/php
<?php 
$config = ['git_urls' => ['https://github.com/yfix/yf_open_flash_chart.git' => 'yf_open_flash_chart/'], 'require_once' => ['yf_open_flash_chart/open-flash-chart.php'], 'example' => function () {
    $bar = new bar_outline(70, '#A2C2FC', '#0750D9');
    $bar->data = [];
    $g = new graph();
    $g->js_path = isset($params['js_path']) ?: '/js/';
    $g->swf_path = isset($params['swf_path_path']) ?: '/js/';
    $g->title(' ', '{font-size: 20px;}');
    $g->set_tool_tip('#val# EUR on #x_label#');
    $g->set_output_type('js');
    echo $g->render();
}];
if ($return_config) {
    return $config;
}
require_once __DIR__ . '/_yf_autoloader.php';
new yf_autoloader($config);
Ejemplo n.º 22
0
function PN_BlogStatisticsProcess($target)
{
    global $blogid, $pluginURL, $defaultURL, $blog;
    if (doesHaveOwnership()) {
        include_once 'lib/open-flash-chart.php';
        $grpStyle = $_GET['grpStyle'];
        $grpData = explode("|", $_GET['grpData']);
        $grpTotal = $_GET['grpTotal'];
        $grpYear = $_GET['grpYear'];
        $grpTypeName = $_GET['grpTypeName'];
        $grpLinkType = $_GET['grpLinkType'];
        $grpXLabelType = isset($_GET['grpXLabelType']) ? $_GET['grpXLabelType'] : 0;
        $grpLabel = explode("|", $_GET['grpLabel']);
        $grpSubTitle = array();
        $grpLabelTemp = array();
        if (!empty($_GET['grpData'])) {
            if ($grpTypeName == "category") {
                for ($i = 0; $i < count($grpLabel); $i++) {
                    $grpSubTitle[] = rawurlencode($grpLabel[$i] == 0 ? _t('분류없음') : htmlspecialchars(UTF8::lessenAsEm(getCategoryNameById($blogid, $grpLabel[$i]), 15)));
                }
            } else {
                if ($grpTypeName == "hits" || $grpTypeName == "cmmax" || $grpTypeName == "tbmax" || $grpTypeName == "tagmax") {
                    for ($i = 0; $i < count($grpLabel); $i++) {
                        $grpSubTitle[] = rawurlencode(htmlspecialchars(UTF8::lessenAsEm(str_replace(",", "-", getEntryTitleById($blogid, $grpLabel[$i])), 25)));
                    }
                } else {
                    if ($grpTypeName == "commenter" || $grpTypeName == "tag") {
                        for ($i = 0; $i < count($grpLabel); $i++) {
                            $grpSubTitle[] = htmlspecialchars(UTF8::lessenAsEm($grpLabel[$i], 15));
                            $grpLabelTemp[] = htmlspecialchars(UTF8::lessenAsEm($grpLabel[$i], 6, ''));
                        }
                        $grpLabel = $grpLabelTemp;
                    } else {
                        if ($grpTypeName == "time") {
                            for ($i = 0; $i < count($grpLabel); $i++) {
                                $grpSubTitle[] = rawurlencode($grpLabel[$i] . "시");
                            }
                        } else {
                            if ($grpTypeName == "refer") {
                                for ($i = 0; $i < count($grpLabel); $i++) {
                                    $tmpHost = explode('.', $grpLabel[$i]);
                                    $tmpHostCnt = count($tmpHost) - 1;
                                    $tmpDomain = (strlen($tmpHost[$tmpHostCnt]) < 3 ? $tmpHost[$tmpHostCnt - 2] . '.' : '') . $tmpHost[$tmpHostCnt - 1] . '.' . $tmpHost[$tmpHostCnt];
                                    $cutDomain = explode('.', $tmpDomain);
                                    $grpSubTitle[] = htmlspecialchars($grpLabel[$i]);
                                    $grpLabelTemp[] = htmlspecialchars(UTF8::lessenAsEm($cutDomain[0], 6, ''));
                                }
                                $grpLabel = $grpLabelTemp;
                            } else {
                                if ($grpTypeName == "referkey") {
                                    for ($i = 0; $i < count($grpLabel); $i++) {
                                        $tmpLabel = explode('(', $grpLabel[$i]);
                                        $grpSubTitle[] = htmlspecialchars(UTF8::lessenAsEm($grpLabel[$i], 15));
                                        $grpLabelTemp[] = htmlspecialchars(UTF8::lessenAsEm($tmpLabel[0], 6, ''));
                                    }
                                    $grpLabel = $grpLabelTemp;
                                }
                            }
                        }
                    }
                }
            }
            $g = new graph();
            $g->bg_colour = '#FFFFFF';
            if ($grpStyle == "pie") {
                $grpClickLink = "";
                $grpPercent = array();
                $grpLink = array();
                for ($i = 0; $i < count($grpData); $i++) {
                    $grpPercent[] = round($grpData[$i] / $grpTotal * 100, 0);
                }
                if ($grpLinkType == "archiveYear") {
                    for ($i = 0; $i < count($grpLabel); $i++) {
                        $permalink = $defaultURL . "/archive/" . substr($grpLabel[$i], 0, 4);
                        $grpLink[] = "javascript:window.open('{$permalink}');void(0)";
                    }
                    $grpClickLink = "<br>click on the pie.";
                } else {
                    if ($grpLinkType == "archiveMonth" && $grpYear != "9999") {
                        for ($i = 0; $i < count($grpLabel); $i++) {
                            $cutMonth = str_replace("월", "", $grpLabel[$i]);
                            $tmpMonth = strlen($cutMonth) == 1 ? "0" . $cutMonth : $cutMonth;
                            $permalink = $defaultURL . "/archive/" . $grpYear . $tmpMonth;
                            $grpLink[] = "javascript:window.open('{$permalink}');void(0)";
                        }
                        $grpClickLink = "<br>click on the pie.";
                    } else {
                        if ($grpLinkType == "category") {
                            for ($i = 0; $i < count($grpLabel); $i++) {
                                $permalink = $defaultURL . "/category/" . getCategoryLabelById($blogid, $grpLabel[$i]);
                                $grpLink[] = "javascript:window.open('{$permalink}');void(0)";
                            }
                            $grpClickLink = "<br>click on the pie.";
                        } else {
                            if ($grpLinkType == "entry") {
                                for ($i = 0; $i < count($grpLabel); $i++) {
                                    $permalink = $defaultURL . ($blog['useSlogan'] ? "/entry/" . getEntrySloganById($blogid, $grpLabel[$i]) : "/" . $grpLabel[$i]);
                                    $grpLink[] = "javascript:window.open('{$permalink}');void(0)";
                                }
                                $grpClickLink = "<br>click on the pie.";
                            } else {
                                if ($grpLinkType == "tag") {
                                    for ($i = 0; $i < count($grpLabel); $i++) {
                                        $permalink = $defaultURL . "/tag/" . $grpLabel[$i];
                                        $grpLink[] = "javascript:window.open('{$permalink}');void(0)";
                                    }
                                    $grpClickLink = "<br>click on the pie.";
                                }
                            }
                        }
                    }
                }
                $g->pie(75, '#ffffff', '#000000', false, 1);
                $g->pie_values($grpData, $grpLabel, $grpLink, $grpSubTitle);
                $g->pie_slice_colours(array('#B9D2E6', '#E2B11C', '#A3CF22', '#EC7122', '#4FC0C0', '#D45E5E', '#A275A2', '#52A7D2', '#9F373B', '#B4ADA5', '#5FC97E', '#CFB85D', '#9DC64E', '#FFAB29', '#E23838', '#43CEA9', '#4CA9D9', '#BA4ECA', '#6C79DA', '#CCCCCC', '#AB5C06', '#C06868', '#5FC97E', 'CFB85D'));
                $g->set_tool_tip((count($grpSubTitle) ? '#x_title#<br>' : '#x_label#<br>') . '#val#(#percent#%25)' . $grpClickLink);
            } else {
                if ($grpStyle == "bar") {
                    $g->title('&nbsp;', '{font-size:12px; color:#000000;margin-top:0px;padding:3px;}');
                    $g->set_data($grpData);
                    $g->set_bar_titles($grpSubTitle);
                    $g->bar_glass(70, '#68B1D9', '#62A0C1', '', 12);
                    $g->bar_colours(array('#B9D2E6', '#E2B11C', '#A3CF22', '#EC7122', '#4FC0C0', '#D45E5E', '#A275A2', '#52A7D2', '#9F373B', '#B4ADA5', '#5FC97E', '#CFB85D', '#9DC64E', '#FFAB29', '#E23838', '#43CEA9', '#4CA9D9', '#BA4ECA', '#6C79DA', '#CCCCCC', '#AB5C06', '#C06868', '#5FC97E', 'CFB85D'));
                    $g->x_axis_colour('#909090', '#D2D2FB');
                    $g->y_axis_colour('#909090', '#D2D2FB');
                    $g->set_x_labels($grpLabel);
                    $g->set_x_label_style(10, '#000000', $grpXLabelType, -1);
                    $g->set_y_label_style(9, '#888888');
                    $tmp_data_max = floor(Max($grpData) * 1.2);
                    if ($tmp_y_max = $tmp_data_max % 10) {
                        $tmp_data_max = $tmp_data_max + (10 - $tmp_y_max);
                    }
                    $g->set_y_max($tmp_data_max);
                    $g->set_y_legend('', 11, '#736AFF');
                    $g->set_tool_tip((count($grpSubTitle) ? '#x_title#<br>' : '#x_label#<br>') . '#val#');
                } else {
                    if ($grpStyle == "line") {
                        $g->title('', '{font-size:1px; color:#000000;}');
                        $g->set_data($grpData);
                        $g->line_dot(2, 4, '#6FBBC6', _t('최근 7일간 방문자 수'), 11);
                        // <-- 3px thick + dots
                        $g->set_x_labels($grpLabel);
                        $g->set_x_label_style(8, '#333333', $grpXLabelType, -1);
                        $g->x_axis_colour('#909090', '#e7e7e7');
                        $g->y_axis_colour('#909090', '#e7e7e7');
                        $tmp_data_max = floor(Max($grpData) * 1.2);
                        if ($tmp_y_max = $tmp_data_max % 10) {
                            $tmp_data_max = $tmp_data_max + (10 - $tmp_y_max);
                        }
                        $g->set_y_max($tmp_data_max);
                        $g->set_y_legend('', 1, '#736AFF');
                        $g->y_label_steps(4);
                        $g->set_y_label_style(8, '#333333', $grpXLabelType, -1);
                        $g->set_tool_tip((count($grpSubTitle) ? '#x_title#<br>' : '#x_label#<br>') . '#val#');
                    }
                }
            }
            echo $g->render();
            flush();
        }
    }
}
Ejemplo n.º 23
0
 function gdiarias($anio = '', $proveed = '', $mes = '')
 {
     $this->load->library('Graph');
     if (empty($mes) or empty($anio) or empty($proveed)) {
         return;
     }
     $proveed = radecode($proveed);
     $fechai = $anio . str_pad($mes, 2, '0', STR_PAD_LEFT) . '01';
     $fechaf = $anio . str_pad($mes, 2, '0', STR_PAD_LEFT) . '31';
     $dbfechai = $this->db->escape($fechai);
     $dbfechaf = $this->db->escape($fechaf);
     $dbproveed = $this->db->escape($proveed);
     $mSQL = "SELECT  LEFT(nombre,10)as nombre,proveed,DAYOFMONTH(fecha) AS dia ,\n\t\tSUM(montonet*IF(tipo_doc='NC', -1, 1)) AS grantotal,\n\t\tSUM(credito*IF( tipo_doc='NC', -1, 1)) AS credito,\n\t\tSUM(inicial*IF( tipo_doc='NC', -1, 1)) AS contado\n\t\tFROM scst\n\t\tWHERE tipo_doc<>'NE' AND fecha>={$dbfechai} AND fecha<={$dbfechaf} AND proveed={$dbproveed}\n\t\t\tAND actuali >= fecha\n\t\tGROUP BY fecha ORDER BY fecha,grantotal DESC LIMIT 31";
     //echo $mSQL;
     $maxval = 0;
     $query = $this->db->query($mSQL);
     foreach ($query->result() as $row) {
         if ($row->grantotal > $maxval) {
             $maxval = $row->grantotal;
         }
         $fecha[] = $row->dia;
         $nombre = str_replace('&', '', $row->nombre);
         //$data_1[]=$row->contado;
         //$data_2[]=$row->credito;
         $data_3[] = $row->grantotal;
     }
     $om = 1;
     while ($maxval / $om > 100) {
         $om = $om * 10;
     }
     //$bar_1 = new bar(75, '#0053A4');
     //$bar_2 = new bar(75, '#9933CC');
     $bar_3 = new bar(75, '#639F45');
     //$bar_1->key('Contado',10);
     //$bar_2->key('Credito',10);
     $bar_3->key('Total Bs.', 10);
     for ($i = 0; $i < count($data_3); $i++) {
         //$bar_1->add_data_tip($data_1[$i]/$om, graph::esc( number_format($data_1[$i],2,',','.')));
         //$bar_2->add_data_tip($data_2[$i]/$om, graph::esc( number_format($data_2[$i],2,',','.')));
         $bar_3->add_data_tip($data_3[$i] / $om, graph::esc(number_format($data_3[$i], 2, ',', '.')));
     }
     $g = new graph();
     $g->set_is_decimal_separator_comma(1);
     if ($maxval > 0) {
         $g->title('Compras a ' . $nombre . '  en el mes ' . $mes . '/' . $anio, '{font-size: 16px; color:##00264A}');
         //$g->data_sets[] = $bar_1;
         //$g->data_sets[] = $bar_2;
         $g->data_sets[] = $bar_3;
         $g->set_x_labels($fecha);
         $g->set_x_label_style(10, '#000000', 3, 1);
         $g->set_x_axis_steps(10);
         $g->set_x_legend('Dias', 14, '#004381');
         $g->bg_colour = '#FFFFFF';
         $g->set_tool_tip('#key#<br>Dia: #x_label# <br>Monto: #tip#');
         $g->set_y_max(ceil($maxval / $om));
         $g->y_label_steps(5);
         $g->set_y_legend('Compras x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381');
     } else {
         $g->title('No existen compras con los datos seleccionados', '{font-size:18px; color: #d01f3c}');
     }
     $g->bg_colour = '#FFFFFF';
     echo utf8_encode($g->render());
 }
Ejemplo n.º 24
0
 function gdiarias($anio = '', $cliente = '', $mes = '')
 {
     $this->load->library('Graph');
     if (empty($mes) or empty($anio) or empty($cliente)) {
         return;
     }
     $fechai = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01';
     $fechaf = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31';
     $mSQL = "SELECT cod_cli,nombre,fecha,DAYOFMONTH(fecha) as dia,                                             \n\t\tsum(gtotal*IF(tipo='D', -1, 1)) AS grantotal,                              \n\t\tsum(gtotal*IF(tipo='D', -1, 1)) AS contado,        \n\t\tsum(gtotal*IF(tipo='D', -1, 1)) AS credito     \n\t\tFROM fmay                                                                      \n\t\tWHERE tipo<>'X' AND fecha>='{$fechai}' AND fecha<='{$fechaf}' AND cod_cli='{$cliente}'                 \n\t\tGROUP BY fecha ORDER BY fecha,grantotal DESC LIMIT 31";
     //echo $mSQL;
     $maxval = 0;
     $query = $this->db->query($mSQL);
     foreach ($query->result() as $row) {
         if ($row->grantotal > $maxval) {
             $maxval = $row->grantotal;
         }
         $fecha[] = $row->dia;
         $data_1[] = $row->contado;
         $data_2[] = $row->credito;
         $data_3[] = $row->grantotal;
     }
     $nombre = $row->nombre;
     $om = 1;
     while ($maxval / $om > 100) {
         $om = $om * 10;
     }
     $bar_1 = new bar(75, '#0053A4');
     $bar_2 = new bar(75, '#9933CC');
     $bar_3 = new bar(75, '#639F45');
     $bar_1->key('Contado', 10);
     $bar_2->key('Credito', 10);
     $bar_3->key('Total', 10);
     for ($i = 0; $i < count($data_1); $i++) {
         $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.')));
         $bar_2->add_data_tip($data_2[$i] / $om, graph::esc(number_format($data_2[$i], 2, ',', '.')));
         $bar_3->add_data_tip($data_3[$i] / $om, graph::esc(number_format($data_3[$i], 2, ',', '.')));
     }
     $g = new graph();
     $g->set_is_decimal_separator_comma(1);
     if ($maxval > 0) {
         $g->title('Compras de el cliente ' . $nombre . '  en el mes ' . $mes . '/' . $anio, '{font-size: 16px; color:#0F3054}');
         $g->data_sets[] = $bar_1;
         $g->data_sets[] = $bar_2;
         $g->data_sets[] = $bar_3;
         $g->set_x_labels($fecha);
         $g->set_x_label_style(10, '#000000', 3, 1);
         $g->set_x_axis_steps(10);
         $g->set_x_legend('Dias', 14, '#004381');
         $g->bg_colour = '#FFFFFF';
         $g->set_tool_tip('#key#<br>Dia: #x_label# <br>Monto: #tip#');
         $g->set_y_max(ceil($maxval / $om));
         $g->y_label_steps(5);
         $g->set_y_legend('hospitalidad x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381');
     } else {
         $g->title('No existen ventas con los datos seleccionados', '{font-size:18px; color: #d01f3c}');
     }
     $g->bg_colour = '#FFFFFF';
     echo utf8_encode($g->render());
 }
Ejemplo n.º 25
0
 function gdiarias($anio = '', $producto = '', $mes = '')
 {
     $this->load->library('Graph');
     if (empty($mes) or empty($anio) or empty($producto)) {
         return;
     }
     $fechai = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01';
     $fechaf = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31';
     $mSQL = "SELECT a.codigo AS codigo,b.descrip AS nombre,DAYOFMONTH(a.fecha) as dia,a.cantidad AS cantidad,\n    SUM(a.venta)AS grantotal \n    FROM  costos AS a \n    JOIN  maes AS b ON a.codigo=b.codigo\n    WHERE a.fecha >='{$fechai}' AND a.fecha <='{$fechaf}' AND a.codigo='{$producto}'\n    GROUP BY fecha ORDER BY grantotal DESC";
     echo $mSQL;
     $maxval = 0;
     $query = $this->db->query($mSQL);
     foreach ($query->result() as $row) {
         if ($row->grantotal > $maxval) {
             $maxval = $row->grantotal;
         }
         $fecha[] = $row->dia;
         $data_1[] = $row->grantotal;
     }
     $nombre = $row->nombre;
     $om = 1;
     while ($maxval / $om > 100) {
         $om = $om * 10;
     }
     $bar_1 = new bar(75, '#0F235F');
     $bar_1->key('supermercado', 10);
     for ($i = 0; $i < count($data_1); $i++) {
         $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.')));
     }
     $g = new graph();
     $g->set_is_decimal_separator_comma(1);
     if ($maxval > 0) {
         $g->title('Ventas de ' . $nombre . '  en el mes ' . $mes . '/' . $anio, '{font-size: 16px; color:#0F3054}');
         $g->data_sets[] = $bar_1;
         $g->set_x_labels($fecha);
         $g->set_x_label_style(10, '#000000', 3, 1);
         $g->set_x_axis_steps(10);
         $g->set_x_legend('Dias', 14, '#004381');
         $g->bg_colour = '#FFFFFF';
         $g->set_tool_tip('#key#<br>Dia: #x_label# <br>Monto: #tip#');
         $g->set_y_max(ceil($maxval / $om));
         $g->y_label_steps(5);
         $g->set_y_legend('supermercado x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381');
     } else {
         $g->title('No existen ventas con los datos seleccionados', '{font-size:18px; color: #d01f3c}');
     }
     $g->bg_colour = '#FFFFFF';
     echo utf8_encode($g->render());
 }
Ejemplo n.º 26
0
 function CasesByProcessPie()
 {
     $g->bg_colour = '#FFFFFF';
     $dataSet = $this->getCasesByProcess();
     $data = $dataSet['data'];
     $g = new graph();
     $g->pie(80, '#505050', '{font-size: 12px; color: #404040;');
     $g->pie_values($data, $dataSet['labelPie']);
     $g->pie_slice_colours(array('#d01f3c', '#356aa0', '#C79810', '#D54C78'));
     $g->set_tool_tip('#val# #x_label#');
     $g->title('Cases by Process', '{font-size:16px; color: #d01f3c}');
     echo $g->render();
 }
Ejemplo n.º 27
0
	if (( int ) $_GET ['quantidade' . $i] > 0) {
		$_nomes [$i] = $_GET ['nome' . $i];
		$_quantidade [$i] = ( int ) $_GET ['quantidade' . $i];
	}

}

require 'library/open-flash-chart.php';
$g = new graph ( );

//
// PIE chart, 60% alpha
//
$g->pie ( 60, '#FFFFFF' );
$g->bg_colour = '#FFFFFF';
//
// pass in two arrays, one of data, the other data labels
//
$g->pie_values ( $_quantidade, $_nomes );
//
// Colours for each slice, in this case some of the colours
// will be re-used (3 colurs for 5 slices means the last two
// slices will have colours colour[0] and colour[1]):
//
$g->pie_slice_colours ( $_CONF['COLORS'] );

$g->set_tool_tip ( '#x_label#<br>#val# itens' );

$g->title ( '', '' );
echo $g->render ();
?>
Ejemplo n.º 28
0
 function gmensuales($anio = '', $mes = '')
 {
     $this->load->library('Graph');
     if (empty($mes) or empty($anio)) {
         return;
     }
     $fechai = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01';
     $fechaf = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31';
     $mSQL = "SELECT DAYOFMONTH(fecha)as dia, fecha,\n\t\tSUM(monto)AS grantotal,SUM(impuesto)AS IVA,SUM(transac)as transacciones \n\t\tfrom est_fecha where fecha>='{$fechai}' AND fecha<='{$fechaf}'\n\t\tGROUP BY  fecha                                                  \n\t\tORDER BY fecha ASC";
     //echo $mSQL;
     $maxval = 0;
     $query = $this->db->query($mSQL);
     foreach ($query->result() as $row) {
         if ($row->grantotal > $maxval) {
             $maxval = $row->grantotal;
         }
         $fecha[] = $row->dia;
         $data_1[] = $row->grantotal;
     }
     $om = 1;
     while ($maxval / $om > 100) {
         $om = $om * 10;
     }
     $bar_1 = new bar(75, '#44AC37');
     $bar_1->key('Monto', 10);
     for ($i = 0; $i < count($data_1); $i++) {
         $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.')));
     }
     $g = new graph();
     $g->set_is_decimal_separator_comma(1);
     if ($maxval > 0) {
         $g->title('Ventas de en el mes ' . $mes . '/' . $anio, '{font-size: 16px; color:##00264A}');
         $g->data_sets[] = $bar_1;
         $g->x_axis_colour('#A6A6A6', '#ADB5C7');
         $g->set_x_labels($fecha);
         $g->set_x_label_style(10, '#000000', 3, 1);
         $g->set_x_axis_steps(10);
         $g->set_x_legend('Dias', 14, '#004381');
         $g->bg_colour = '#FFFFFF';
         $g->set_tool_tip('#key#<br>Dia: #x_label# <br>Monto: #tip#');
         $g->set_y_max(ceil($maxval / $om));
         $g->y_label_steps(5);
         $g->y_axis_colour('#A6A6A6', '#ADB5C7');
         $g->set_y_legend('Ventas x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381');
     } else {
         $g->title('No existen ventas con los datos seleccionados', '{font-size:18px; color: #d01f3c}');
     }
     $g->bg_colour = '#FFFFFF';
     echo utf8_encode($g->render());
 }
Ejemplo n.º 29
0
 function grafico($anio = '')
 {
     $this->load->library('Graph');
     $this->lang->load('calendar');
     if (empty($anio)) {
         return;
     }
     $fechai = $anio . '0101';
     $fechaf = $anio . '1231';
     $mSQL = "SELECT MONTHNAME(fecha)AS mes,\n\t\tAVG(sueldoa) AS anterior,\n\t\tAVG(sueldo)  AS actual\n\t\tFROM ausu\n\t\tWHERE fecha>='{$fechai}' AND fecha<='{$fechaf}'\n\t\tGROUP BY mes ORDER BY fecha";
     //echo $mSQL;
     $maxval = 0;
     $query = $this->db->query($mSQL);
     foreach ($query->result() as $row) {
         if ($row->anterior > $maxval) {
             $maxval = $row->anterior;
         }
         $nmes[] = $this->lang->line('cal_' . strtolower($row->mes));
         $data_1[] = $row->anterior;
         $data_2[] = $row->actual;
         //$data_3[]=$row->actual;
     }
     $om = 1;
     while ($maxval / $om > 100) {
         $om = $om * 10;
     }
     $bar_1 = new bar(75, '#0053A4');
     $bar_2 = new bar(75, '#9933CC');
     $bar_3 = new bar(75, '#639F45');
     $bar_1->key('Sueldo Anterior', 10);
     $bar_2->key('Sueldo con Aumento', 10);
     //$bar_3->key('Total'  ,10);
     for ($i = 0; $i < count($data_1); $i++) {
         $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.')));
         $bar_2->add_data_tip($data_2[$i] / $om, graph::esc(number_format($data_2[$i], 2, ',', '.')));
         $bar_3->add_data_tip($data_3[$i] / $om, graph::esc(number_format($data_3[$i], 2, ',', '.')));
     }
     $g = new graph();
     $g->title('Promedio de Aumento de Sueldos en el a&ntilde;o ' . $anio, '{font-size: 22px; color:##00264A}');
     $g->set_is_decimal_separator_comma(1);
     $g->data_sets[] = $bar_1;
     $g->data_sets[] = $bar_2;
     $g->data_sets[] = $bar_3;
     $g->set_x_labels($nmes);
     $g->set_x_label_style(9, '#000000', 3, 1);
     $g->set_x_axis_steps(8);
     $g->set_x_legend('Meses ', 16, '#004381');
     $g->bg_colour = '#FFFFFF';
     $g->set_tool_tip('#key#<br>Mes: #x_label# <br>Monto: #tip#');
     $g->set_y_max(ceil($maxval / $om));
     $g->y_label_steps(5);
     $g->set_y_legend('Sueldo x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381');
     echo utf8_encode($g->render());
 }
Ejemplo n.º 30
0
 function grafico($anio = '', $codigo = '')
 {
     $this->load->library('Graph');
     if (empty($anio) or empty($codigo)) {
         return;
     }
     $fechai = $anio . '0101';
     $fechaf = $anio . '1231';
     $mSQL = "SELECT MONTHNAME(fecha)AS mes,codigo,nombre,sueldoa,sueldo FROM ausu\n    WHERE fecha>='{$fechai}' AND fecha<='{$fechaf}'AND codigo='{$codigo}'\n    ORDER BY fecha";
     //echo $mSQL;
     $maxval = 0;
     $query = $this->db->query($mSQL);
     foreach ($query->result() as $row) {
         if ($row->sueldoa > $maxval) {
             $maxval = $row->sueldoa;
         }
         $nombre = $row->nombre;
         $meses[] = $row->mes;
         $data_1[] = $row->sueldoa;
         $data_2[] = $row->sueldo;
         //$data_3[]=$row->sueldoa;
     }
     $om = 1;
     while ($maxval / $om > 100) {
         $om = $om * 10;
     }
     $bar_1 = new bar(75, '#0053A4');
     $bar_2 = new bar(75, '#9933CC');
     //$bar_3 = new bar(75, '#639F45');
     $bar_1->key('Sueldo Anterior', 10);
     $bar_2->key('Sueldo con Aumento', 10);
     //$bar_3->key('Total'  ,10);
     for ($i = 0; $i < count($data_1); $i++) {
         $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.')));
         $bar_2->add_data_tip($data_2[$i] / $om, graph::esc(number_format($data_2[$i], 2, ',', '.')));
         //$bar_3->add_data_tip($data_3[$i]/$om, graph::esc( number_format($data_3[$i],2,',','.')));
     }
     $g = new graph();
     $g->title('Aumento de ' . $nombre . ' en el a&ntilde;o ' . $anio, '{font-size: 20px; color:##00264A}');
     $g->set_is_decimal_separator_comma(1);
     $g->data_sets[] = $bar_1;
     $g->data_sets[] = $bar_2;
     //$g->data_sets[] = $bar_3;
     $g->set_x_labels($meses);
     $g->set_x_label_style(10, '#000000', 3, 1);
     $g->set_x_axis_steps(10);
     $g->set_x_legend('Meses', 16, '#004381');
     $g->bg_colour = '#FFFFFF';
     $g->set_tool_tip('#key#<br>Mes: #x_label# <br>Monto: #tip#');
     $g->set_y_max(ceil($maxval / $om));
     $g->y_label_steps(5);
     $g->set_y_legend('Ventas x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381');
     echo utf8_encode($g->render());
 }