Пример #1
0
 public function index2Action()
 {
     $this->_helper->layout->disableLayout();
     include 'open-flash-chart.php';
     $db = Zend_Registry::get('db');
     $select = $db->select();
     $select->from('report', array('left(create_date,10) as date', 'count(*)'))->where('report.campaign_id = 3')->where("report.state = 'APPROVED'")->group('date')->order('date')->limit(0);
     $results = $db->fetchAll($select);
     $array_data = array();
     $array_create_date = array();
     foreach ($results as $result) {
         array_push($array_data, (int) $result["count(*)"]);
         array_push($array_create_date, $result["date"]);
     }
     $title = new title("BugsLock Reports By Day");
     $y = new y_axis();
     $y->set_range(0, 100, 10);
     $x = new x_axis();
     $x_labels = new x_axis_labels();
     $x_labels->set_labels($array_create_date);
     $x_labels->set_steps(2);
     $x_labels->rotate(40);
     $x->set_labels($x_labels);
     //There is a bug on the tooltip of bar: can not show #x_label#. So use bar_stack instead of bar here.
     //		$bar = new bar_filled( '#E2D66A', '#577261' );
     //		$bar->set_values($array_data);
     //		$bar->set_tooltip('#x_label#: #val#');
     $bar = new bar_stack();
     $bar->set_colours(array('#E2D66A', '#577261'));
     foreach ($array_data as $date) {
         $bar->append_stack(array((int) $date));
     }
     $bar->set_tooltip('#x_label#: #val#');
     $this->view->chart3 = new open_flash_chart();
     $this->view->chart3->set_title($title);
     $this->view->chart3->add_element($bar);
     $this->view->chart3->set_bg_colour('#FFFFFF');
     $this->view->chart3->set_x_axis($x);
     $this->view->chart3->set_y_axis($y);
     //		echo $this->view->chart3->toPrettyString();
 }
Пример #2
0
 /**
  * Alias for FlashChart::chart('bar_stack');
  *
  * @param array $options
  * @param string $datasetName The name to be used to associate charts with data
  * @param string $chartId Name of chart. Use for seperate charts.
  * @return string
  */
 public function barStack($options = array(), $datasetName = 'default', $chartId = 'default')
 {
     if (empty($this->data[$datasetName])) {
         return false;
     }
     $bar_stack = new bar_stack();
     $bar_stack->set_colours($this->stackColours);
     foreach ($this->data[$datasetName] as $values) {
         $bar_stack->append_stack($values);
     }
     if (!empty($this->tooltip)) {
         $bar_stack->set_tooltip($this->tooltip);
     }
     foreach ($options as $key => $setting) {
         $set_method = 'set_' . $key;
         if (is_array($setting)) {
             $bar_stack->{$set_method}($setting[0], $setting[1]);
         } else {
             $bar_stack->{$set_method}($setting);
         }
     }
     $this->Chart->set_bg_colour($this->bg_colour);
     $this->Chart->add_element($bar_stack);
     return $this->renderData($chartId);
 }
Пример #3
0
 /**
  * Alias for FlashChart::chart('bar_stack');
  *
  * @param array $options
  * @param string $datasetName The name to be used to associate charts with data
  * @param string $chartId Name of chart. Use for seperate charts.
  * @return string
  */
 public function barStack($options = array(), $datasetName = 'default', $chartId = null)
 {
     if (!is_null($chartId)) {
         $this->chartId = $chartId;
     }
     if (empty($this->data[$datasetName])) {
         return false;
     }
     $bar_stack = new bar_stack();
     $numbers = $this->getNumbers($datasetName);
     foreach ($numbers as $values) {
         $tmp = array();
         if (sizeof($this->stackColours) == sizeof($values)) {
             foreach ($values as $key => $value) {
                 $tmp[] = new bar_stack_value($value, $this->stackColours[$key]);
             }
         } else {
             $tmp = $values;
         }
         $bar_stack->append_stack($tmp);
     }
     if (!empty($this->tooltip)) {
         $bar_stack->set_tooltip($this->tooltip);
     }
     foreach ($options as $key => $setting) {
         $set_method = 'set_' . $key;
         if (is_array($setting)) {
             $bar_stack->{$set_method}($setting[0], $setting[1]);
         } else {
             $bar_stack->{$set_method}($setting);
         }
     }
     $this->Chart->set_bg_colour($this->bg_colour);
     $this->Chart->add_element($bar_stack);
     return $this->data($this->chartId);
 }
Пример #4
0
    $arrayTipos[] = $key;
    // Suma el total de Radicados
    $noTotalRadsTMP = $noTotalRadsTMP + $infoXtipoRojo[$key] + $infoXtipoAmarillo[$key] + $infoXtipoVerde[$key];
    if ($noTotalRadsTMP > $noTotalRads) {
        $noTotalRads = $noTotalRadsTMP;
    }
    $noTotalRadsTMP = 0;
}
// set a cycle of 3 colours:
// add 3 bars:
// add 4 bars, the fourth will be the same colour as the first:
//$bar_stack->append_stack( array( 2.5, 5, 1.25, 1.25 ) );
//$bar_stack->append_stack( array( 5, new bar_stack_value(5, '#ff0000') ) );
//$bar_stack->append_stack( array( 2, 2, 2, 2, new bar_stack_value(2, '#ff00ff') ) );
$bar_stack->set_keys(array(new bar_stack_key('#C4D318', 'En Peligro de Vencer', 12), new bar_stack_key('#77CC6D', 'Tiempo Ok', 12), new bar_stack_key('#ff0000', 'Vencidos', 12)));
$bar_stack->set_tooltip('X label [#x_label#], Radicados [#val#]<br>Total [#total#]');
$y = new y_axis();
$y->set_range(0, $noTotalRads, 2);
$x = new x_axis();
$animation_1 = 'pop';
$delay_1 = 0.25;
$cascade_1 = 10;
//$x->set_labels->set_vertical();
$bar_stack->set_on_show(new bar_on_show($animation_1, $cascade_1, $delay_1));
$x_labels = new x_axis_labels();
//$x_labels->set_steps( 1 );
$x_labels->rotate(15);
$x_labels->set_labels($arrayTipos);
$x->set_labels($x_labels);
//$x->rotate(90);
$tooltip = new tooltip();
Пример #5
0
}
if (defined($_REQUEST['debug'])) {
    print_r($data_curr);
    print_r($data_soll);
}
if ($i == 0) {
    echo 0;
    exit;
}
$title = new title(date('F Y', $time) . " (" . round($MaxETotal - $MinETotal, 2) . " kWh)");
$title->set_style('{font-size: 20px; color: #778877}');
$bars_curr = new bar_stack();
//$bars_curr->set_key( 'Ist Tagesleistung (kWh)', 10 );
$bars_curr->set_colours(array('#EFC01D', '#000000'));
$bars_curr->set_alpha(0.8);
$bars_curr->set_tooltip('#val# kWh');
for ($i = 0; $i < count($data_curr); $i++) {
    $bval = new bar_stack_value(min($data_curr[$i], $data_soll[$i]), '#EFC01D');
    $bval->{"on-click"} = "load_chart('day',{$ttime_axis[$i]})";
    if ($data_curr[$i] < $data_soll[$i]) {
        $bval_plus = null;
        $bval_minus = new bar_stack_value($data_soll[$i] - $data_curr[$i], '#FFC0C0');
    } elseif ($data_curr[$i] > $data_soll[$i]) {
        $bval_minus = null;
        $bval_plus = new bar_stack_value($data_curr[$i] - $data_soll[$i], '#1DFF1D');
    }
    $bars_curr->append_stack(array($bval, $bval_minus, $bval_plus));
    $bval_minus = null;
    $bval_plus = null;
}
$line_soll = new line();
Пример #6
0
function stacked_bar_chart($host_instance_list)
{
    $title = new title('所有instance实际内存使用');
    $title->set_style("{color: #567300; font-size: 16px; font-weight:bold;}");
    $bar_stack = new bar_stack();
    $bar_stack->set_colours(array('#C4D318', '#7D7B6A'));
    $max = 64;
    foreach ($host_instance_list as $i => $instance) {
        $jvmmem = isset($instance['jvmmem']) ? explode('/', $instance['jvmmem']) : array();
        if ($jvmmem) {
            foreach ($jvmmem as &$j) {
                $j = intval($j);
            }
            $max = $max < $jvmmem[1] ? $jvmmem[1] : $max;
            $jvmmem[1] = $jvmmem[1] - $jvmmem[0];
        }
        $bar_stack->append_stack($jvmmem);
        $lables[] = $instance['port_num'];
        $services[$i] = $instance['service_name'];
    }
    $bar_stack->set_keys(array(new bar_stack_key('#C4D318', 'used', 13), new bar_stack_key('#7D7B6A', 'total', 13)));
    $bar_stack->set_on_click('(function(x){var services=' . json_encode($services) . ';alert(services[x]);})');
    //js
    $bar_stack->set_tooltip('#val#M,共#total#M');
    $y = new y_axis();
    $y->set_range(0, $max + 32, 256);
    $x = new x_axis();
    $x->set_labels_from_array($lables);
    $tooltip = new tooltip();
    $tooltip->set_hover();
    $chart = new open_flash_chart();
    $chart->set_title($title);
    $chart->add_element($bar_stack);
    $chart->set_x_axis($x);
    $chart->add_y_axis($y);
    $chart->set_tooltip($tooltip);
    return $chart->toPrettyString();
}
Пример #7
0
 function gsitedata()
 {
     $this->autoRender = false;
     $solid = $this->Session->read('sol');
     $host_id = $this->Session->read('host_id');
     $tinterval = 3600;
     $host_srch = "";
     if (!empty($host_id) && $host_id != 0) {
         $host_srch = " AND source_id = " . $host_id;
     }
     $this->DnsMessage->recursive = -1;
     $site_count = $this->DnsMessage->query('SELECT hostname, COUNT(*) FROM dns_messages WHERE sol_id = ' . $solid . $host_srch . ' GROUP BY hostname ORDER BY COUNT(*) DESC LIMIT 50');
     //sort($site_count);
     $data = array();
     $x = array();
     $max_resp = 0;
     foreach ($site_count as $site) {
         $data[] = array((int) $site[0]['COUNT(*)'], 0);
         if ($max_resp < (int) $site[0]['COUNT(*)']) {
             $max_resp = (int) $site[0]['COUNT(*)'];
         }
         if (empty($site[0]['hostname'])) {
             $x[] = (string) $site['dns_messages']['hostname'];
         } else {
             $x[] = (string) $site[0]['hostname'];
         }
     }
     // joson data format
     $title = new title(__("Host Popularity", true));
     $title->set_style("{font-size: 14px; color: #990000; text-align: center; font-weight:bold;}");
     $bar = new bar_stack();
     $bar->set_colours(array('#e77919', '#577261'));
     $bar->set_on_show(new bar_on_show('grow-up', 0, 0.5));
     $bar->set_values($data);
     $bar->set_tooltip('Host: #x_label#<br>Response #val#<br>');
     $tooltip = new tooltip();
     $tooltip->set_hover();
     $tooltip->set_shadow(false);
     $tooltip->set_stroke(5);
     $tooltip->set_colour("#6E604F");
     $tooltip->set_background_colour("#BDB396");
     $data_labels = new x_axis_labels();
     $data_labels->rotate(90);
     $data_labels->set_labels($x);
     $x_axis = new x_axis();
     $x_axis->set_labels($data_labels);
     $y = new y_axis();
     $y->set_range(0, $max_resp * 1.1, (int) ($max_resp / 10));
     $chart = new open_flash_chart();
     $chart->set_bg_colour('#F9F9F9');
     $chart->set_title($title);
     $chart->add_element($bar);
     $chart->set_x_axis($x_axis);
     $chart->set_y_axis($y);
     $chart->set_tooltip($tooltip);
     // menu'
     $m = new ofc_menu("#f0E0ff", "#878787");
     $m->values(array(new ofc_menu_item(__('DNS Response', true), 'go_gpage')));
     $chart->set_menu($m);
     header("Content-Type: text/plain");
     echo $chart->toPrettyString();
     die;
 }