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(); }
/** * 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); }
/** * 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); }
$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();
} 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();
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(); }
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; }