public function display() { /*CHART*/ $chart = new VerticalBarChart(4500, 350); $dataSet = new XYDataSet(); foreach ($this->data as $key => $datum) { $dataSet->addPoint(new Point($datum['client_ip'], $datum['frequency'])); } $chart->setDataSet($dataSet); $chart->getPlot()->setLogoFileName(""); //clear the image logo $chart->setTitle(""); //clear the image title $chart->render("front-end/images/client_request_vertical_bar_plot.png"); /*CHART*/ $session = SessionFactory::create(); $dom = DOMHandlerFactory::create(); $dom->setDocumentFromFile(STATISTICAL_LOG_ANALIZER_HTML)->whereIdIs('login-user')->insertNode($session->get('session-user-name')); $selectedDate = $session->get("selected-date"); $title = "<h3>Bar Graph IP requests for the day: " . $selectedDate . " </h3>"; $dom->whereIdIs("body-title")->insertNode($title); $graph = '<div style="text-align: center;"> <img src="front-end/images/client_request_vertical_bar_plot.png" alt="" border="0"> </div>'; $dom->whereIdIs("squidDataContainer")->insertNode($graph); $dom->display(); }
public function setData($data) { $dataSet = new XYDataSet(); foreach ($data as $info) { $dataSet->addPoint(new Point($info[0], $info[1])); } $this->chart->setDataSet($dataSet); }
public function display() { $chart = new LineChart(4500, 350); $dataSet = new XYDataSet(); foreach ($this->data as $key => $datum) { $dataSet->addPoint(new Point($datum['client_ip'], $datum['frequency'])); } $chart->setDataSet($dataSet); $chart->setTitle("Client Request Frequency Line Plot"); $chart->render("front-end/images/client_request_vertical_bar_plot.png"); $session = SessionFactory::create(); $dom = DOMHandlerFactory::create(); $dom->setDocumentFromFile(STATISTICAL_LOG_ANALIZER_HTML)->whereIdIs('login-user')->insertNode($session->get('session-user-name')); $graph = '<div style="text-align: center;"> <img src="front-end/images/client_request_vertical_bar_plot.png" alt="" border="0"> </div>'; $dom->whereIdIs("squidDataContainer")->insertNode($graph); $dom->display(); }
public function display() { $session = SessionFactory::create(); $clientIp = $session->get("selected-client-ip"); $date = $session->get("selected-date"); $beginTime = $this->data[0]['time']; $endTime = end($this->data)['time']; /*CHART*/ // $chart = new HorizontalBarChart(800,30000); $chart = new LineChart(3000, 500); $dataSet = new XYDataSet(); // $protocols = array('http://', 'https://', 'ftp://', 'www.'); foreach ($this->data as $key => $datum) { // $domain = explode('/', str_replace($protocols, '', $datum['url'])); $dataSet->addPoint(new Point("", $datum['frequency'])); } $chart->setDataSet($dataSet); $chart->getPlot()->setGraphPadding(new Padding(5, 3, 20, 140)); $chart->getPlot()->setLogoFileName(""); //clear the image logo $chart->setTitle(""); //clear the image title $chart->render("front-end/images/domains_request_horizontal_bar_plot.png"); /*CHART*/ $session = SessionFactory::create(); $dom = DOMHandlerFactory::create(); $dom->setDocumentFromFile(STATISTICAL_LOG_ANALIZER_HTML)->whereIdIs('login-user')->insertNode($session->get('session-user-name')); //INSERT TITLE: $title = "<h3>Client (" . $clientIp . ") Domains Request Frequency Bar Plot, at: " . $date . " between: " . $beginTime . " and " . $endTime . "</h3>"; $dom->whereIdIs("body-title")->insertNode($title); $graph = '<div style="text-align: center;"> <img src="front-end/images/domains_request_horizontal_bar_plot.png" alt="" border="0"> </div>'; $dom->whereIdIs("squidDataContainer")->insertNode($graph); $dom->display(); }
/** * @author Ibnu Daqiqil Id * @param string $title Judul Chart * @param array $data Data array dengan dua dimensi (key,value) * @param integer $x Lebar chart * @param integer $y Tinggi Chart * @param string $type tipe output chart (bar_vertikal,bar_horizontal,pie) * @param boolean $render Apakah di render ke file? */ function create_bar_chart($title, $data, $x = 500, $y = 300, $type = "bar_vertikal", $render_file = FALSE) { if ("bar_horizontal" == $type) { $chart = new HorizontalBarChart($x, $y); } else { if ("bar_vertikal" == $type) { $chart = new VerticalBarChart($x, $y); } else { $chart = new PieChart($x, $y); } } $dataSet = new XYDataSet(); foreach ($data as $value) { $dataSet->addPoint(new Point($value['key'], $value['value'])); } $chart->setDataSet($dataSet); $chart->setTitle($title); if (!$render_file) { return $chart->render(); } else { return $chart->render($render_file); } }
function renderLineChart($value_arrays, $labels = NULL, $title = '', $xlabels = NULL) { $chart = new LineChart(1000, 400); $dataSet = new XYSeriesDataSet(); for ($va = 0; $va < sizeof($value_arrays); $va++) { $value_array = $value_arrays[$va]; $ds = new XYDataSet(); if (sizeof($value_array)) { for ($x = 0; $x < sizeof($value_array); $x++) { if ($xlabels) { $label = $xlabels[$x]; } else { $label = $x + 1; } $ds->addPoint(new Point($label, $value_array[$x])); } } else { // need at least one point or will except $ds->addPoint(new Point(1, 0)); } if ($labels) { $label = $labels[$va]; } else { $label = $va; } $dataSet->addSerie($label, $ds); } $chart->setDataSet($dataSet); $chart->setTitle($title); $name = tempnam('/tmp', '.png'); $chart->render($name); $image = base64_encode(file_get_contents($name)); unlink($name); echo '<div style="text-align: center"><img src="data:image/png;base64,'; echo $image; echo '"></div>'; }
public function display() { $session = SessionFactory::create(); $clientIp = $session->get("selected-client-ip"); $date = $session->get("selected-date"); $beginTime = $this->data[0]['time']; $endTime = end($this->data)['time']; /*CHART*/ $chart = new LineChart(1400, 500); $serie1 = new XYDataSet(); foreach ($this->data as $key => $datum) { $serie1->addPoint(new Point("", $datum['client_data'])); } $dataSet = new XYSeriesDataSet(); $dataSet->addSerie("Client: " . $clientIp . " at " . $date, $serie1); $chart->setDataSet($dataSet); $chart->getPlot()->setGraphPadding(new Padding(5, 3, 20, 140)); $chart->setTitle(""); //clear the image title $chart->getPlot()->setLogoFileName(""); //clear the image logo $chart->render("front-end/images/client_data_line_plot.png"); /*CHART*/ //DOM: $dom = DOMHandlerFactory::create(); $dom->setDocumentFromFile(STATISTICAL_LOG_ANALIZER_HTML)->whereIdIs('login-user')->insertNode($session->get('session-user-name')); //INSERT TITLE: $title = "<h3>Client (" . $clientIp . ") Data Consumption Line Chart, \n at: " . $date . " between: " . $beginTime . " and " . $endTime . "</h3>"; $dom->whereIdIs("body-title")->insertNode($title); //INSERT GRAPH: $graph = '<div style="text-align: center;"> <img src="front-end/images/client_data_line_plot.png" alt="" border="0"> </div>'; $dom->whereIdIs("squidDataContainer")->insertNode($graph); $dom->display(); }
function grafico_doppio($v, $nomegrafico, $titolo, $i, $ii, $init) { // $chart = new VerticalBarChart(600,200); // $chart = new VerticalBarChart(); $chart = new LineChart(); $dataSet = new XYDataSet(); $x = $init; foreach ($v as $e) { $dataSet->addPoint(new Point(sprintf("%02d", $x), $e[$i] + 0)); $x = $x + 1; } $dataSet1 = new XYDataSet(); $x = $init; foreach ($v as $e) { $dataSet1->addPoint(new Point(sprintf("%02d", $x), $e[$ii] + 0)); $x = $x + 1; } $dataSet3 = new XYSeriesDataSet(); $dataSet3->addSerie("Vento Medio", $dataSet); $dataSet3->addSerie("Raffiche", $dataSet1); $chart->setDataSet($dataSet3); $chart->setTitle($titolo); $chart->render($nomegrafico); }
function getDatasetCasesByProcess() { $dataSet = new XYDataSet(); $processObj = new Process(); $c = new Criteria('workflow'); $c->clearSelectColumns(); $c->addSelectColumn(ApplicationPeer::PRO_UID); $c->addSelectColumn('COUNT(*) AS CANT'); //$c->addJoin( ProcessPeer::PRO_UID, ProcessPeer::PRO_UID, Criteria::LEFT_JOIN); $c->addGroupByColumn(ApplicationPeer::PRO_UID); $rs = ApplicationPeer::doSelectRS($c); $rs->setFetchmode(ResultSet::FETCHMODE_ASSOC); $rs->next(); $row = $rs->getRow(); while (is_array($row)) { $processObj->load($row['PRO_UID']); $label = $processObj->getProTitle(); $value = $row['CANT']; $dataSet->addPoint(new Point($label, (int) $value)); $rs->next(); $row = $rs->getRow(); } return $dataSet; }
$serie1->addPoint(new Point("{$month} 17, {$year} ", $ro->getPxCensusMonth($month, "17", $year, "OPD"))); $serie1->addPoint(new Point("{$month} 18, {$year} ", $ro->getPxCensusMonth($month, "18", $year, "OPD"))); $serie1->addPoint(new Point("{$month} 19, {$year} ", $ro->getPxCensusMonth($month, "19", $year, "OPD"))); $serie1->addPoint(new Point("{$month} 20, {$year} ", $ro->getPxCensusMonth($month, "20", $year, "OPD"))); $serie1->addPoint(new Point("{$month} 21, {$year} ", $ro->getPxCensusMonth($month, "21", $year, "OPD"))); $serie1->addPoint(new Point("{$month} 22, {$year} ", $ro->getPxCensusMonth($month, "22", $year, "OPD"))); $serie1->addPoint(new Point("{$month} 23, {$year} ", $ro->getPxCensusMonth($month, "23", $year, "OPD"))); $serie1->addPoint(new Point("{$month} 24, {$year} ", $ro->getPxCensusMonth($month, "24", $year, "OPD"))); $serie1->addPoint(new Point("{$month} 25, {$year} ", $ro->getPxCensusMonth($month, "25", $year, "OPD"))); $serie1->addPoint(new Point("{$month} 26, {$year} ", $ro->getPxCensusMonth($month, "26", $year, "OPD"))); $serie1->addPoint(new Point("{$month} 27, {$year} ", $ro->getPxCensusMonth($month, "27", $year, "OPD"))); $serie1->addPoint(new Point("{$month} 28, {$year} ", $ro->getPxCensusMonth($month, "28", $year, "OPD"))); $serie1->addPoint(new Point("{$month} 29, {$year} ", $ro->getPxCensusMonth($month, "29", $year, "OPD"))); $serie1->addPoint(new Point("{$month} 30, {$year} ", $ro->getPxCensusMonth($month, "30", $year, "OPD"))); $serie1->addPoint(new Point("{$month} 31, {$year} ", $ro->getPxCensusMonth($month, "31", $year, "OPD"))); $serie2 = new XYDataSet(); $serie2->addPoint(new Point("{$month} 1, {$year}", $ro->getPxCensusMonth($month, "01", $year, "IPD"))); $serie2->addPoint(new Point("{$month} 2, {$year}", $ro->getPxCensusMonth($month, "02", $year, "IPD"))); $serie2->addPoint(new Point("{$month} 3, {$year} ", $ro->getPxCensusMonth($month, "03", $year, "IPD"))); $serie2->addPoint(new Point("{$month} 4, {$year} ", $ro->getPxCensusMonth($month, "04", $year, "IPD"))); $serie2->addPoint(new Point("{$month} 5, {$year}", $ro->getPxCensusMonth($month, "05", $year, "IPD"))); $serie2->addPoint(new Point("{$month} 6, {$year}", $ro->getPxCensusMonth($month, "06", $year, "IPD"))); $serie2->addPoint(new Point("{$month} 7, {$year}", $ro->getPxCensusMonth($month, "07", $year, "IPD"))); $serie2->addPoint(new Point("{$month} 8, {$year}", $ro->getPxCensusMonth($month, "08", $year, "IPD"))); $serie2->addPoint(new Point("{$month} 9, {$year}", $ro->getPxCensusMonth($month, "09", $year, "IPD"))); $serie2->addPoint(new Point("{$month} 10, {$year}", $ro->getPxCensusMonth($month, "10", $year, "IPD"))); $serie2->addPoint(new Point("{$month} 11, {$year}", $ro->getPxCensusMonth($month, "11", $year, "IPD"))); $serie2->addPoint(new Point("{$month} 12, {$year}", $ro->getPxCensusMonth($month, "12", $year, "IPD"))); $serie2->addPoint(new Point("{$month} 13, {$year}", $ro->getPxCensusMonth($month, "13", $year, "IPD"))); $serie2->addPoint(new Point("{$month} 14, {$year}", $ro->getPxCensusMonth($month, "14", $year, "IPD"))); $serie2->addPoint(new Point("{$month} 15, {$year}", $ro->getPxCensusMonth($month, "15", $year, "IPD")));
$serie1->addPoint(new Point("{$month} 17, {$year} ", number_format($ro->getPxRevenueDaily_opd($month, "17", $year), 2))); $serie1->addPoint(new Point("{$month} 18, {$year} ", number_format($ro->getPxRevenueDaily_opd($month, "18", $year), 2))); $serie1->addPoint(new Point("{$month} 19, {$year} ", number_format($ro->getPxRevenueDaily_opd($month, "19", $year), 2))); $serie1->addPoint(new Point("{$month} 20, {$year} ", number_format($ro->getPxRevenueDaily_opd($month, "20", $year), 2))); $serie1->addPoint(new Point("{$month} 21, {$year} ", number_format($ro->getPxRevenueDaily_opd($month, "21", $year), 2))); $serie1->addPoint(new Point("{$month} 22, {$year} ", number_format($ro->getPxRevenueDaily_opd($month, "22", $year), 2))); $serie1->addPoint(new Point("{$month} 23, {$year} ", number_format($ro->getPxRevenueDaily_opd($month, "23", $year), 2))); $serie1->addPoint(new Point("{$month} 24, {$year} ", number_format($ro->getPxRevenueDaily_opd($month, "24", $year), 2))); $serie1->addPoint(new Point("{$month} 25, {$year} ", number_format($ro->getPxRevenueDaily_opd($month, "25", $year), 2))); $serie1->addPoint(new Point("{$month} 26, {$year} ", number_format($ro->getPxRevenueDaily_opd($month, "26", $year), 2))); $serie1->addPoint(new Point("{$month} 27, {$year} ", number_format($ro->getPxRevenueDaily_opd($month, "27", $year), 2))); $serie1->addPoint(new Point("{$month} 28, {$year} ", number_format($ro->getPxRevenueDaily_opd($month, "28", $year), 2))); $serie1->addPoint(new Point("{$month} 29, {$year} ", number_format($ro->getPxRevenueDaily_opd($month, "29", $year), 2))); $serie1->addPoint(new Point("{$month} 30, {$year} ", number_format($ro->getPxRevenueDaily_opd($month, "30", $year), 2))); $serie1->addPoint(new Point("{$month} 31, {$year} ", number_format($ro->getPxRevenueDaily_opd($month, "31", $year), 2))); $serie2 = new XYDataSet(); $serie2->addPoint(new Point("{$month} 1, {$year}", number_format($ro->getPxRevenueDaily_ipd($month, "01", $year), 2))); $serie2->addPoint(new Point("{$month} 2, {$year}", number_format($ro->getPxRevenueDaily_ipd($month, "02", $year), 2))); $serie2->addPoint(new Point("{$month} 3, {$year} ", number_format($ro->getPxRevenueDaily_ipd($month, "03", $year), 2))); $serie2->addPoint(new Point("{$month} 4, {$year} ", number_format($ro->getPxRevenueDaily_ipd($month, "04", $year), 2))); $serie2->addPoint(new Point("{$month} 5, {$year}", number_format($ro->getPxRevenueDaily_ipd($month, "05", $year), 2))); $serie2->addPoint(new Point("{$month} 6, {$year}", number_format($ro->getPxRevenueDaily_ipd($month, "06", $year), 2))); $serie2->addPoint(new Point("{$month} 7, {$year}", number_format($ro->getPxRevenueDaily_ipd($month, "07", $year), 2))); $serie2->addPoint(new Point("{$month} 8, {$year}", number_format($ro->getPxRevenueDaily_ipd($month, "08", $year), 2))); $serie2->addPoint(new Point("{$month} 9, {$year}", number_format($ro->getPxRevenueDaily_ipd($month, "09", $year), 2))); $serie2->addPoint(new Point("{$month} 10, {$year}", number_format($ro->getPxRevenueDaily_ipd($month, "10", $year), 2))); $serie2->addPoint(new Point("{$month} 11, {$year}", number_format($ro->getPxRevenueDaily_ipd($month, "11", $year), 2))); $serie2->addPoint(new Point("{$month} 12, {$year}", number_format($ro->getPxRevenueDaily_ipd($month, "12", $year), 2))); $serie2->addPoint(new Point("{$month} 13, {$year}", number_format($ro->getPxRevenueDaily_ipd($month, "13", $year), 2))); $serie2->addPoint(new Point("{$month} 14, {$year}", number_format($ro->getPxRevenueDaily_ipd($month, "14", $year), 2))); $serie2->addPoint(new Point("{$month} 15, {$year}", number_format($ro->getPxRevenueDaily_ipd($month, "15", $year), 2)));
$serie2->addPoint(new Point("Nov {$year}", $ro->getGenderAnnual("11", $year, "female", "OPD"))); $serie2->addPoint(new Point("Dec {$year}", $ro->getGenderAnnual("12", $year, "female", "OPD"))); $serie3 = new XYDataSet(); $serie3->addPoint(new Point("Jan {$year}", $ro->getGenderAnnual("01", $year, "male", "IPD"))); $serie3->addPoint(new Point("Feb {$year}", $ro->getGenderAnnual("02", $year, "male", "IPD"))); $serie3->addPoint(new Point("Mar {$year}", $ro->getGenderAnnual("03", $year, "male", "IPD"))); $serie3->addPoint(new Point("Apr {$year}", $ro->getGenderAnnual("04", $year, "male", "IPD"))); $serie3->addPoint(new Point("May {$year}", $ro->getGenderAnnual("05", $year, "male", "IPD"))); $serie3->addPoint(new Point("Jun {$year}", $ro->getGenderAnnual("06", $year, "male", "IPD"))); $serie3->addPoint(new Point("Jul {$year}", $ro->getGenderAnnual("07", $year, "male", "IPD"))); $serie3->addPoint(new Point("Aug {$year}", $ro->getGenderAnnual("08", $year, "male", "IPD"))); $serie3->addPoint(new Point("Sep {$year}", $ro->getGenderAnnual("09", $year, "male", "IPD"))); $serie3->addPoint(new Point("Oct {$year}", $ro->getGenderAnnual("10", $year, "male", "IPD"))); $serie3->addPoint(new Point("Nov {$year}", $ro->getGenderAnnual("11", $year, "male", "IPD"))); $serie3->addPoint(new Point("Dec {$year}", $ro->getGenderAnnual("12", $year, "male", "IPD"))); $serie4 = new XYDataSet(); $serie4->addPoint(new Point("Jan {$year}", $ro->getGenderAnnual("01", $year, "female", "IPD"))); $serie4->addPoint(new Point("Feb {$year}", $ro->getGenderAnnual("02", $year, "female", "IPD"))); $serie4->addPoint(new Point("Mar {$year}", $ro->getGenderAnnual("03", $year, "female", "IPD"))); $serie4->addPoint(new Point("Apr {$year}", $ro->getGenderAnnual("04", $year, "female", "IPD"))); $serie4->addPoint(new Point("May {$year}", $ro->getGenderAnnual("05", $year, "female", "IPD"))); $serie4->addPoint(new Point("Jun {$year}", $ro->getGenderAnnual("06", $year, "female", "IPD"))); $serie4->addPoint(new Point("Jul {$year}", $ro->getGenderAnnual("07", $year, "female", "IPD"))); $serie4->addPoint(new Point("Aug {$year}", $ro->getGenderAnnual("08", $year, "female", "IPD"))); $serie4->addPoint(new Point("Sep {$year}", $ro->getGenderAnnual("09", $year, "female", "IPD"))); $serie4->addPoint(new Point("Oct {$year}", $ro->getGenderAnnual("10", $year, "female", "IPD"))); $serie4->addPoint(new Point("Nov {$year}", $ro->getGenderAnnual("11", $year, "female", "IPD"))); $serie4->addPoint(new Point("Dec {$year}", $ro->getGenderAnnual("12", $year, "female", "IPD"))); $dataSet = new XYSeriesDataSet(); $dataSet->addSerie("OPD Male", $serie1); $dataSet->addSerie("OPD Female", $serie2);
* but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. * */ /** * Multiple horizontal bar chart demonstration. * */ include "../../../COCONUT/libchart/libchart/classes/libchart.php"; $chart = new hundredsBarChart(4000, 1500); $ro = new database1(); $serie1 = new XYDataSet(); $serie1->addPoint(new Point("{$month} 31", number_format($ro->getBestSellingChart_opd($month, "31", $year, $description) / 100, 2))); $serie1->addPoint(new Point("{$month} 30", number_format($ro->getBestSellingChart_opd($month, "30", $year, $description) / 100, 2))); $serie1->addPoint(new Point("{$month} 29", number_format($ro->getBestSellingChart_opd($month, "29", $year, $description) / 100, 2))); $serie1->addPoint(new Point("{$month} 28", number_format($ro->getBestSellingChart_opd($month, "28", $year, $description) / 100, 2))); $serie1->addPoint(new Point("{$month} 27", number_format($ro->getBestSellingChart_opd($month, "27", $year, $description) / 100, 2))); $serie1->addPoint(new Point("{$month} 26", number_format($ro->getBestSellingChart_opd($month, "26", $year, $description) / 100, 2))); $serie1->addPoint(new Point("{$month} 25", number_format($ro->getBestSellingChart_opd($month, "25", $year, $description) / 100, 2))); $serie1->addPoint(new Point("{$month} 24", number_format($ro->getBestSellingChart_opd($month, "24", $year, $description) / 100, 2))); $serie1->addPoint(new Point("{$month} 23", number_format($ro->getBestSellingChart_opd($month, "23", $year, $description) / 100, 2))); $serie1->addPoint(new Point("{$month} 22", number_format($ro->getBestSellingChart_opd($month, "22", $year, $description) / 100, 2))); $serie1->addPoint(new Point("{$month} 21", number_format($ro->getBestSellingChart_opd($month, "21", $year, $description) / 100, 2))); $serie1->addPoint(new Point("{$month} 20", number_format($ro->getBestSellingChart_opd($month, "20", $year, $description) / 100, 2))); $serie1->addPoint(new Point("{$month} 19", number_format($ro->getBestSellingChart_opd($month, "19", $year, $description) / 100, 2))); $serie1->addPoint(new Point("{$month} 18", number_format($ro->getBestSellingChart_opd($month, "18", $year, $description) / 100, 2))); $serie1->addPoint(new Point("{$month} 17", number_format($ro->getBestSellingChart_opd($month, "17", $year, $description) / 100, 2)));
* but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. * */ /** * Pie chart demonstration * */ include "../../../COCONUT/libchart/libchart/classes/libchart.php"; $chart = new PieChart(); $ro = new database1(); $dataSet = new XYDataSet(); $dataSet->addPoint(new Point("OPD (" . number_format($ro->getPxRevenueDaily_opd($fromMonth, $fromDay, $fromYear), 2) . ")", $ro->getPxRevenueDaily_opd($fromMonth, $fromDay, $fromYear))); $dataSet->addPoint(new Point("IPD (" . number_format($ro->getPxRevenueDaily_ipd($fromMonth, $fromDay, $fromYear), 2) . ")", $ro->getPxRevenueDaily_ipd($fromMonth, $fromDay, $fromYear))); $chart->setDataSet($dataSet); $chart->setTitle("Collection Report For {$fromMonth} {$fromDay}, {$fromYear} "); $chart->render("../../../COCONUT/graphicalReport/chartList/dailyRevenue.png"); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-15" /> </head> <body> <img alt="Pie chart" src="/COCONUT/graphicalReport/chartList/dailyRevenue.png" style="border: 1px solid gray;"/> </body>
* This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. * */ /** * Line chart demonstration * */ include "../libchart/classes/libchart.php"; $chart = new LineChart(); $dataSet = new XYDataSet(); $dataSet->addPoint(new Point("06-01", 273)); $dataSet->addPoint(new Point("06-02", 421)); $dataSet->addPoint(new Point("06-03", 642)); $dataSet->addPoint(new Point("06-04", 799)); $dataSet->addPoint(new Point("06-05", 1009)); $dataSet->addPoint(new Point("06-06", 1406)); $dataSet->addPoint(new Point("06-07", 1820)); $dataSet->addPoint(new Point("06-08", 2511)); $dataSet->addPoint(new Point("06-09", 2832)); $dataSet->addPoint(new Point("06-10", 3550)); $dataSet->addPoint(new Point("06-11", 4143)); $dataSet->addPoint(new Point("06-12", 4715)); $chart->setDataSet($dataSet); $chart->setTitle("Sales for 2006"); $chart->render("generated/demo5.png");
/** * Display a nice graph from data * * @param type Type of data. * @param sort Field */ function renderGraph($machines, $type, $sort, $filter) { $id = "{$type} {$sort}"; $chart = new PieChart(770, 340); $dataSet = new XYDataSet(); $div = 1; $mod = 0; $suffix = ""; switch ($id) { case "BootGeneral TotalMem": $div = 1024; $mod = 64; $suffix = " MB"; break; case "BootGeneral Freq": $div = 1; $mod = 200; $suffix = " Mhz"; break; case "BootDisk Capacity": $div = 1000; $mod = 20; $suffix = " GB"; break; case "Memory Size": $div = 1024; $mod = 0; $suffix = " MB"; break; } $data = array(); foreach ($machines as $machine) { foreach ($machine[1] as $inv) { // filter data in ranges if ($div != 1) { $inv /= $div; $inv = round($inv); } if ($mod) { $inv /= $mod; $inv = round($inv); $inv *= $mod; if ($inv != 0) { $inv = $d - $mod + 1 . "-" . $inv; } } if ($suffix != "") { $inv = $inv . $suffix; } $data[$inv] += 1; } } // For each data count the occurence foreach ($data as $key => $value) { $dataSet->addPoint(new Point("{$key} ({$value})", $value)); } $chart->setDataSet($dataSet); $chart->setTitle(ucfirst($sort)); header("Content-type: image/png"); @$chart->render(); exit; }
</tr> <tr> <td>Cloud Storage</td> <td>' . $totalTimeForCloudStorage . '</td> </tr> <tr> <td>Display Contents</td> <td>' . $totalDisplayTime . '</td> </tr> <tr> <th>Total Time</th> <th>' . $totalTimeIndexing . '</th> </tr> </table> '; $chart = new VerticalBarChart(1200, 500); $dataSet = new XYDataSet(); $dataSet->addPoint(new Point("File Upload", $totalTimetoUploadFiles)); $dataSet->addPoint(new Point("Reading File", $totalTimetoReadFiles)); $dataSet->addPoint(new Point("Encryption", $totalTimeForEncryption)); $dataSet->addPoint(new Point("Keyword Extraction", $totalTimeForKeywordGeneration)); $dataSet->addPoint(new Point("Database <br>Computations", $totalDatabaseTime)); $dataSet->addPoint(new Point("Cloud Storage", $totalTimeForCloudStorage)); $dataSet->addPoint(new Point("Display Contents", $totalDisplayTime)); $chart->setDataSet($dataSet); $chart->setTitle("Graphical Analysis"); $chart->render("generated/multimediaIndex.png"); echo ' <br /><br /> <center><img src="generated/multimediaIndex.png" /></center> ';
ini_set('display_errors', 1); error_reporting(E_ALL); include "libchart/libchart/classes/libchart.php"; $chart = new LineChart(650, 200); $db = JFactory::getDBO(); $query = <<<QUERY SELECT bin_x, bin_y FROM fleet_acceleration WHERE bin_x AND bin_y ORDER BY date DESC LIMIT 3600 QUERY; $db->setQuery($query); $serie1 = new XYDataSet(); $serie2 = new XYDataSet(); $xbins = array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); $ybins = array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); foreach ($db->loadAssocList() as $row) { if ($row['bin_x']) { $xbins[$row['bin_x'] - 1]++; } if ($row['bin_y']) { $ybins[$row['bin_y'] - 1]++; } } for ($x = 0; $x < 31; $x++) { $serie1->addPoint(new Point($x + 1, $xbins[$x])); $serie2->addPoint(new Point($x + 1, $ybins[$x])); } $dataSet = new XYSeriesDataSet();
$chart = new revenueLineChart("1500", "500"); $ro = new database1(); $serie1 = new XYDataSet(); $serie1->addPoint(new Point("Jan {$year}", $ro->getPHICReceivablesAnnual("Jan", $year) / 1000)); $serie1->addPoint(new Point("Feb {$year}", $ro->getPHICReceivablesAnnual("Feb", $year) / 1000)); $serie1->addPoint(new Point("Mar {$year}", $ro->getPHICReceivablesAnnual("Mar", $year) / 1000)); $serie1->addPoint(new Point("Apr {$year}", $ro->getPHICReceivablesAnnual("Apr", $year) / 1000)); $serie1->addPoint(new Point("May {$year}", $ro->getPHICReceivablesAnnual("May", $year) / 1000)); $serie1->addPoint(new Point("Jun {$year}", $ro->getPHICReceivablesAnnual("Jun", $year) / 1000)); $serie1->addPoint(new Point("Jul {$year}", $ro->getPHICReceivablesAnnual("Jul", $year) / 1000)); $serie1->addPoint(new Point("Aug {$year}", $ro->getPHICReceivablesAnnual("Aug", $year) / 1000)); $serie1->addPoint(new Point("Sep {$year}", $ro->getPHICReceivablesAnnual("Sep", $year) / 1000)); $serie1->addPoint(new Point("Oct {$year}", $ro->getPHICReceivablesAnnual("Oct", $year) / 1000)); $serie1->addPoint(new Point("Nov {$year}", $ro->getPHICReceivablesAnnual("Nov", $year) / 1000)); $serie1->addPoint(new Point("Dec {$year}", $ro->getPHICReceivablesAnnual("Dec", $year) / 1000)); $serie2 = new XYDataSet(); $serie2->addPoint(new Point("Jan {$year}", $ro->getPHICReceivablesAnnual_package("Jan", $year) / 1000)); $serie2->addPoint(new Point("Feb {$year}", $ro->getPHICReceivablesAnnual_package("Feb", $year) / 1000)); $serie2->addPoint(new Point("Mar {$year}", $ro->getPHICReceivablesAnnual_package("Mar", $year) / 1000)); $serie2->addPoint(new Point("Apr {$year}", $ro->getPHICReceivablesAnnual_package("Apr", $year) / 1000)); $serie2->addPoint(new Point("May {$year}", $ro->getPHICReceivablesAnnual_package("May", $year) / 1000)); $serie2->addPoint(new Point("Jun {$year}", $ro->getPHICReceivablesAnnual_package("Jun", $year) / 1000)); $serie2->addPoint(new Point("Jul {$year}", $ro->getPHICReceivablesAnnual_package("Jul", $year) / 1000)); $serie2->addPoint(new Point("Aug {$year}", $ro->getPHICReceivablesAnnual_package("Aug", $year) / 1000)); $serie2->addPoint(new Point("Sep {$year}", $ro->getPHICReceivablesAnnual_package("Sep", $year) / 1000)); $serie2->addPoint(new Point("Oct {$year}", $ro->getPHICReceivablesAnnual_package("Oct", $year) / 1000)); $serie2->addPoint(new Point("Nov {$year}", $ro->getPHICReceivablesAnnual_package("Nov", $year) / 1000)); $serie2->addPoint(new Point("Dec {$year}", $ro->getPHICReceivablesAnnual_package("Dec", $year) / 1000)); $dataSet = new XYSeriesDataSet(); $dataSet->addSerie("PhilHealth Non-Package", $serie1); $dataSet->addSerie("PhilHealth Package", $serie2);
require_once "{$root}/Function/Debug.php"; require_once "{$root}/Function/DataTime.php"; $Stati = GetRows("tab_stato_mch", "", "stato_mch", $db, 1); /* echo "<pre>"; print_r($Stati); echo "</pre>"; */ //Padding::Padding ($top, $right, $bottom, $left) define("ChartPath", "tmp/chart.png"); define("ChartWidth", 1000); define("ChartHeight", 400); $chart = new PieChart(ChartWidth, ChartHeight); $chart->getPlot()->setGraphPadding(new Padding("5", "5", "5", "5")); $chart->setTitle("Statistiche Magazzino RollOut"); $dataSet = new XYDataSet(); foreach ($Stati as $key => $field) { $stat = GetRows("tab_macchine", "id_stato = '" . $field['id_stato_call'] . "'", "", $db, 1, "count(id_macchina) as count"); /* echo "[Debug]: count stato: ".$stat[0]['count']." <br />"; */ $dataSet->addPoint(new Point($field['stato_call'] . " ( " . $stat[0]['count'] . " )", $stat[0]['count'])); } $chart->setDataSet($dataSet); $chart->render(ChartPath); ?> <img src="<?php echo ChartPath; ?>
// assume year has always 4 digits // e.g. 2005 $curTimestamp = substr($curTimestamp, 0, 4); // $curTimestamp is oldest year, if $oldestYear is not set if (strlen($oldestYear) === 0) { $oldestYear = $curTimestamp; } if (!isset($matches[$curTimestamp]['year'])) { $matches[$curTimestamp]['year'] = $curTimestamp; } if (strcmp($curTimestamp, $oldTimestamp) === 0) { // if we are still in the same month: 1 more match in the month $matches[$curTimestamp]['matches']++; } else { // otherwise initialise with 1 (at least one match at that month) $matches[$curTimestamp]['matches'] = '1'; } // done with this month $oldTimestamp = $curTimestamp; } $chart = new VerticalBarChart(450, 250); $dataSet = new XYDataSet(); /* $chart->getPlot()->setGraphPadding(new Padding(0, 15, 25, 50)); */ // add a data point for each month foreach ($matches as $matchesPerYear) { $dataSet->addPoint(new Point($matchesPerYear['year'], $matchesPerYear['matches'])); } $chart->setDataSet($dataSet); $chart->setTitle('Official GU Matches [ ' . $oldestYear . ' - ' . date('Y') . ' ]'); // FIXME: Where should the graph be saved? $chart->render(dirname(__FILE__) . '/img/yearBar.png');
$counter++; } //We set the line chart's dataset and render the graph $chart->setDataSet($dataSet); $chart->setTitle("Connections per day"); $chart->render("generated-graphs/connections_per_day.png"); } //----------------------------------------------------------------------------------------------------------------- //CONNECTIONS PER WEEK //----------------------------------------------------------------------------------------------------------------- $db_query = "SELECT COUNT(*), MAKEDATE(\n CASE\n WHEN WEEKOFYEAR(date_time) = 52\n THEN YEAR(date_time)-1\n ELSE YEAR(date_time)\n END, (WEEKOFYEAR(date_time) * 7)-4) AS DateOfWeek_Value\n FROM connections\n GROUP BY WEEKOFYEAR(date_time)\n ORDER BY date_time ASC"; $rows = R::getAll($db_query); if (count($rows)) { //We create a new line chart and initialize the dataset $chart = new LineChart(600, 300); $dataSet = new XYDataSet(); //This graph gets messed up for large DBs, so here is a simple way to limit some of the input $counter = 1; //Display date legend only every $mod rows, 25 distinct values being the optimal for a graph $mod = round(count($rows) / 25); if ($mod == 0) { $mod = 1; } //otherwise a division by zero might happen below //For every row returned from the database we add a new point to the dataset foreach ($rows as $row) { if ($counter % $mod == 0) { $dataSet->addPoint(new Point(date('d-m-Y', strtotime($row['DateOfWeek_Value'])), $row['COUNT(*)'])); } else { $dataSet->addPoint(new Point('', $row['COUNT(*)'])); }
echo getPourcent($toutsession['presents'], $toutsession['inscrits']); ?> </div></div> </div><div class="clear"></div> </div><!-- /.box-body--> </div><!-- /.box --> <?php //liste des catégories croiser avec l'année $categorie, $year frequentation depuis année 0 //Categories $nbcategories = CountCategories(); //donnes du graphique $chartCat = new VerticalBarChart(425, 300); $dataSetCat = new XYDataSet(); $y = $year; if ($nbcategories > 0) { for ($n = 1; $n <= $nbcategories; $n++) { $categories = mysqli_fetch_array(statSessionCategory($n, $y, $epn)); //debug($categories); $particip = round($categories['presents'] / $categories['inscrits'] * 100, 2) . " %"; $dataSetCat->addPoint(new Point($categories['label_categorie'], $particip)); } //creation du graphique $chartCat->setDataSet($dataSetCat); $chartCat->setTitle("Participation par categories en %"); $chartCat->getPlot()->getPalette()->setBarColor(array(new Color(1, 105, 201))); $chartCat->render("img/chart/" . $year . "/categorieSession.png"); } ?>
public function printTop10Urls() { $db_query = "SELECT url, COUNT(url) AS count\n FROM connections\n WHERE url <> ''\n GROUP BY url\n ORDER BY COUNT(url) DESC\n LIMIT 10"; $rows = R::getAll($db_query); if (count($rows)) { //We create a new vertical bar chart and initialize the dataset $chart = new VerticalBarChart(600, 300); $dataSet = new XYDataSet(); //We create a skeleton for the table $counter = 1; echo '<h3>Top 10 urls</h3>'; echo '<p>The following table displays the top 10 urls used by attackers.</p>'; echo '<p><a href="include/export.php?type=Urls">CSV of all urls</a><p>'; echo '<table><thead>'; echo '<tr class="dark">'; echo '<th>ID</th>'; echo '<th>Url</th>'; echo '<th>Count</th>'; echo '</tr></thead><tbody>'; //For every row returned from the database we add a new point to the dataset, //and create a new table row with the data as columns foreach ($rows as $row) { $dataSet->addPoint(new Point($row['url'], $row['count'])); echo '<tr class="light word-break">'; echo '<td>' . $counter . '</td>'; echo '<td>' . xss_clean($row['url']) . '</td>'; echo '<td>' . $row['count'] . '</td>'; echo '</tr>'; $counter++; } //Close tbody and table element, it's ready. echo '</tbody></table>'; //We set the bar chart's dataset and render the graph $chart->setDataSet($dataSet); $chart->setTitle(TOP_10_URLS); //For this particular graph we need to set the corrent padding $chart->getPlot()->setGraphPadding(new Padding(5, 40, 120, 50)); //top, right, bottom, left | defaults: 5, 30, 50, 50 $chart->render("generated-graphs/top10_urls.png"); echo '<p>This vertical bar chart visualizes the top 10 urls used by attackers.</p>'; echo '<img src="generated-graphs/top10_urls.png">'; echo '<hr /><br />'; } }
* */ include "../libchart/classes/libchart.php"; $chart = new PieChart(); $dataSet = new XYDataSet(); $dataSet->addPoint(new Point("Mozilla Firefox (10 feedback)", 10)); $dataSet->addPoint(new Point("Konqueror (75)", 75)); $dataSet->addPoint(new Point("Opera (50)", 50)); $dataSet->addPoint(new Point("Safari (37)", 37)); $dataSet->addPoint(new Point("Dillo (37)", 37)); $dataSet->addPoint(new Point("Other (72)", 70)); $chart->setDataSet($dataSet); $chart->setTitle("User agents for www.example.com"); $chart->render("generated/demo3.png"); $chart2 = new PieChart(); $dataSet2 = new XYDataSet(); $dataSet2->addPoint(new Point("Mozilla (10)", 10)); $dataSet2->addPoint(new Point("Konqror (75)", 75)); $dataSet2->addPoint(new Point("Opa (50)", 50)); $dataSet2->addPoint(new Point("Saf (37)", 37)); $dataSet2->addPoint(new Point("Dilo (37)", 37)); $dataSet2->addPoint(new Point("Oter (72)", 70)); $chart2->setDataSet($dataSet2); $chart2->setTitle("User agents for www.example.com"); $chart2->render("generated/demo4.png"); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Libchart pie chart demonstration</title> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-15" />
//direccion $direccionTincer += 1; } else { $direccionLaCuesta += 1; } } /// $paradas[] = $json[$i]->nextStop; $servicio[] = $json[$i]->service; $tiempo[] = $json[$i]->remainingMinutes; if ($json[$i]->remainingMinutes > $tiempoMax) { $tiempoMax = $json[$i]->remainingMinutes; } } $chart = new VerticalBarChart(); $dataSet = new XYDataSet(); for ($i = 0; $i < count($tiempo); $i++) { $dataSet->addPoint(new Point($paradas[$i] . '-' . $servicio[$i], $tiempo[$i])); } // addDataSet(array($tiempo[$i])); $chart->setDataSet($dataSet); $chart->setTitle("Tiempo restante por parada - tranvía"); $chart->render("grafico.png"); ?> <html> <head> <title>Libchart vertical bars demonstration</title> </head> <body> <img alt="grafico de barras" src="grafico.png" style="border: 1px solid gray;"/> </body>
$serie2->addPoint(new Point("06-06", 850)); $serie3 = new XYDataSet(); $serie3->addPoint(new Point("06-01", 180)); $serie3->addPoint(new Point("06-02", 400)); $serie3->addPoint(new Point("06-03", 512)); $serie3->addPoint(new Point("06-04", 642)); $serie3->addPoint(new Point("06-05", 700)); $serie3->addPoint(new Point("06-06", 900)); $serie4 = new XYDataSet(); $serie4->addPoint(new Point("06-01", 280)); $serie4->addPoint(new Point("06-02", 500)); $serie4->addPoint(new Point("06-03", 612)); $serie4->addPoint(new Point("06-04", 742)); $serie4->addPoint(new Point("06-05", 800)); $serie4->addPoint(new Point("06-06", 1000)); $serie5 = new XYDataSet(); $serie5->addPoint(new Point("06-01", 380)); $serie5->addPoint(new Point("06-02", 600)); $serie5->addPoint(new Point("06-03", 712)); $serie5->addPoint(new Point("06-04", 842)); $serie5->addPoint(new Point("06-05", 900)); $serie5->addPoint(new Point("06-06", 1200)); $dataSet = new XYSeriesDataSet(); $dataSet->addSerie("Product 1", $serie1); $dataSet->addSerie("Product 2", $serie2); $dataSet->addSerie("Product 3", $serie3); $dataSet->addSerie("Product 4", $serie4); $dataSet->addSerie("Product 5", $serie5); $chart->setDataSet($dataSet); $chart->setTitle("Sales for 2006"); $chart->getPlot()->setGraphCaptionRatio(0.62);
$chart = new revenueLineChart("1500", "500"); $ro = new database1(); $serie1 = new XYDataSet(); $serie1->addPoint(new Point("Jan {$year}", $ro->getAnnualRevenue_opd("01", $year))); $serie1->addPoint(new Point("Feb {$year}", $ro->getAnnualRevenue_opd("02", $year))); $serie1->addPoint(new Point("Mar {$year}", $ro->getAnnualRevenue_opd("03", $year))); $serie1->addPoint(new Point("Apr {$year}", $ro->getAnnualRevenue_opd("04", $year))); $serie1->addPoint(new Point("May {$year}", $ro->getAnnualRevenue_opd("05", $year))); $serie1->addPoint(new Point("Jun {$year}", $ro->getAnnualRevenue_opd("06", $year))); $serie1->addPoint(new Point("Jul {$year}", $ro->getAnnualRevenue_opd("07", $year))); $serie1->addPoint(new Point("Aug {$year}", $ro->getAnnualRevenue_opd("08", $year))); $serie1->addPoint(new Point("Sep {$year}", $ro->getAnnualRevenue_opd("09", $year))); $serie1->addPoint(new Point("Oct {$year}", $ro->getAnnualRevenue_opd("10", $year))); $serie1->addPoint(new Point("Nov {$year}", $ro->getAnnualRevenue_opd("11", $year))); $serie1->addPoint(new Point("Dec {$year}", $ro->getAnnualRevenue_opd("12", $year))); $serie2 = new XYDataSet(); $serie2->addPoint(new Point("Jan {$year}", $ro->getAnnualRevenue_ipd("01", $year))); $serie2->addPoint(new Point("Feb {$year}", $ro->getAnnualRevenue_ipd("02", $year))); $serie2->addPoint(new Point("Mar {$year}", $ro->getAnnualRevenue_ipd("03", $year))); $serie2->addPoint(new Point("Apr {$year}", $ro->getAnnualRevenue_ipd("04", $year))); $serie2->addPoint(new Point("May {$year}", $ro->getAnnualRevenue_ipd("05", $year))); $serie2->addPoint(new Point("Jun {$year}", $ro->getAnnualRevenue_ipd("06", $year))); $serie2->addPoint(new Point("Jul {$year}", $ro->getAnnualRevenue_ipd("07", $year))); $serie2->addPoint(new Point("Aug {$year}", $ro->getAnnualRevenue_ipd("08", $year))); $serie2->addPoint(new Point("Sep {$year}", $ro->getAnnualRevenue_ipd("09", $year))); $serie2->addPoint(new Point("Oct {$year}", $ro->getAnnualRevenue_ipd("10", $year))); $serie2->addPoint(new Point("Nov {$year}", $ro->getAnnualRevenue_ipd("11", $year))); $serie2->addPoint(new Point("Dec {$year}", $ro->getAnnualRevenue_ipd("12", $year))); $dataSet = new XYSeriesDataSet(); $dataSet->addSerie("OPD", $serie1); $dataSet->addSerie("IPD", $serie2);
function _simpleChart($proposals, $criterias, $reportType) { $countryDao =& DAORegistry::getDAO('CountryDAO'); $extraFieldDao =& DAORegistry::getDAO('ExtraFieldDAO'); $this->setupTemplate(); $journal =& Request::getJournal(); $measurement = Request::getUserVar('measurement'); $chartOptions = Request::getUserVar('chartOptions'); import('classes.lib.libchart.classes.libchart'); if ($reportType == 1) { $pieChart = new PieChart(); } elseif ($reportType == 2) { $pieChart = new VerticalBarChart(); } $dataSet = new XYDataSet(); $dataSetArray = array(); $keyNA = Locale::translate('editor.reports.notApplicable'); $keyN = Locale::translate('editor.reports.nationwide'); $keyWHS = Locale::translate('editor.reports.chart.withoutHumanSubjects'); if ($measurement == 0) { $endTitle = Locale::translate('common.bySomebody') . ' ' . Locale::translate('editor.reports.measurement.proposalNmbre'); } else { $endTitle = Locale::translate('common.bySomebody') . ' ' . Locale::translate('editor.reports.measurement.cumulatedBudget'); } foreach ($proposals as $proposal) { if ($measurement == 0) { $toSumUp = (int) 1; } else { $toSumUp = (int) $proposal->getTotalBudget(); } $proposalDetails = $proposal->getProposalDetails(); $riskAssessment = $proposal->getRiskAssessment(); if ($chartOptions == 'studentResearch') { if ($proposalDetails->getStudentResearch() == PROPOSAL_DETAIL_YES) { $studentResearchInfo = $proposalDetails->getStudentResearchInfo(); $key = Locale::translate($studentResearchInfo->getDegreeKey()); if (array_key_exists($key, $dataSetArray)) { $dataSetArray[$key] = $dataSetArray[$key] + $toSumUp; } else { $dataSetArray[$key] = (int) $toSumUp; } unset($key); } else { if (array_key_exists($keyNA, $dataSetArray)) { $dataSetArray[$keyNA] = $dataSetArray[$keyNA] + $toSumUp; } else { $dataSetArray[$keyNA] = (int) $toSumUp; } } } elseif ($chartOptions == 'kii') { $key = $proposalDetails->getKeyImplInstitutionAcronym(); if (array_key_exists($key, $dataSetArray)) { $dataSetArray[$key] = $dataSetArray[$key] + $toSumUp; } else { $dataSetArray[$key] = (int) $toSumUp; } unset($key); } elseif ($chartOptions == 'multiCountry') { if ($proposalDetails->getMultiCountryResearch() == PROPOSAL_DETAIL_YES) { $countries = $proposalDetails->getCountries(); $countries = explode(',', $countries); foreach ($countries as $country) { $key = $countryDao->getCountry($country); if (array_key_exists($key, $dataSetArray)) { $dataSetArray[$key] = $dataSetArray[$key] + $toSumUp; } else { $dataSetArray[$key] = (int) $toSumUp; } unset($key); } } else { if (array_key_exists($keyNA, $dataSetArray)) { $dataSetArray[$keyNA] = $dataSetArray[$keyNA] + $toSumUp; } else { $dataSetArray[$keyNA] = (int) $toSumUp; } } } elseif ($chartOptions == 'nationwide') { if ($proposalDetails->getNationwide() != PROPOSAL_DETAIL_YES) { $geoAreas = $proposalDetails->getGeoAreasArray(); foreach ($geoAreas as $geoArea) { $extraField =& $extraFieldDao->getExtraField($geoArea); $key = isset($extraField) ? $extraField->getLocalizedExtraFieldName() : '-'; if (array_key_exists($key, $dataSetArray)) { $dataSetArray[$key] = $dataSetArray[$key] + $toSumUp; } else { $dataSetArray[$key] = (int) $toSumUp; } unset($key); unset($extraField); } } else { if (array_key_exists($keyN, $dataSetArray)) { $dataSetArray[$keyN] = $dataSetArray[$keyN] + $toSumUp; } else { $dataSetArray[$keyN] = (int) $toSumUp; } } } elseif ($chartOptions == 'proposalTypes') { if ($proposalDetails->getHumanSubjects() == PROPOSAL_DETAIL_YES) { $proposalTypes = $proposalDetails->getProposalTypesArray(); foreach ($proposalTypes as $proposalType) { $extraField =& $extraFieldDao->getExtraField($proposalType); $key = isset($extraField) ? $extraField->getLocalizedExtraFieldName() : '-'; if (array_key_exists($key, $dataSetArray)) { $dataSetArray[$key] = $dataSetArray[$key] + $toSumUp; } else { $dataSetArray[$key] = (int) $toSumUp; } unset($key); unset($extraField); } } else { if (array_key_exists($keyWHS, $dataSetArray)) { $dataSetArray[$keyWHS] = $dataSetArray[$keyWHS] + $toSumUp; } else { $dataSetArray[$keyWHS] = (int) $toSumUp; } } } elseif ($chartOptions == 'researchDomains') { $researchDomains = $proposalDetails->getResearchDomainsArray(); foreach ($researchDomains as $researchDomain) { $extraField =& $extraFieldDao->getExtraField($researchDomain); $key = isset($extraField) ? $extraField->getLocalizedExtraFieldName() : '-'; if (array_key_exists($key, $dataSetArray)) { $dataSetArray[$key] = $dataSetArray[$key] + $toSumUp; } else { $dataSetArray[$key] = (int) $toSumUp; } unset($key); unset($extraField); } } elseif ($chartOptions == 'researchFields') { $researchFields = $proposalDetails->getResearchFieldsArray(); foreach ($researchFields as $researchField) { $extraField =& $extraFieldDao->getExtraField($researchField); $key = isset($extraField) ? $extraField->getLocalizedExtraFieldName() : '-'; if (array_key_exists($key, $dataSetArray)) { $dataSetArray[$key] = $dataSetArray[$key] + $toSumUp; } else { $dataSetArray[$key] = (int) $toSumUp; } unset($key); unset($extraField); } } elseif ($chartOptions == 'dataCollection') { $key = Locale::translate($proposalDetails->getDataCollectionKey()); if (array_key_exists($key, $dataSetArray)) { $dataSetArray[$key] = $dataSetArray[$key] + $toSumUp; } else { $dataSetArray[$key] = (int) $toSumUp; } unset($key); } elseif ($chartOptions == 'exportHumanTissue') { if ($riskAssessment->getBioSamples() == RISK_ASSESSMENT_YES) { $key = Locale::translate($riskAssessment->getYesNoKey($riskAssessment->getExportHumanTissue())); if (array_key_exists($key, $dataSetArray)) { $dataSetArray[$key] = $dataSetArray[$key] + $toSumUp; } else { $dataSetArray[$key] = (int) $toSumUp; } unset($key); } else { if (array_key_exists($keyNA, $dataSetArray)) { $dataSetArray[$keyNA] = $dataSetArray[$keyNA] + $toSumUp; } else { $dataSetArray[$keyNA] = (int) $toSumUp; } } } elseif ($chartOptions == 'exportReason') { if ($riskAssessment->getBioSamples() == RISK_ASSESSMENT_YES && $riskAssessment->getExportHumanTissue() == RISK_ASSESSMENT_YES) { $key = Locale::translate($riskAssessment->getExportReasonKey()); if (array_key_exists($key, $dataSetArray)) { $dataSetArray[$key] = $dataSetArray[$key] + $toSumUp; } else { $dataSetArray[$key] = (int) $toSumUp; } unset($key); } else { if (array_key_exists($keyNA, $dataSetArray)) { $dataSetArray[$keyNA] = $dataSetArray[$keyNA] + $toSumUp; } else { $dataSetArray[$keyNA] = (int) $toSumUp; } } } else { $key = Locale::translate($riskAssessment->getYesNoKey($riskAssessment->{$chartOptions}())); if (array_key_exists($key, $dataSetArray)) { $dataSetArray[$key] = $dataSetArray[$key] + $toSumUp; } else { $dataSetArray[$key] = (int) $toSumUp; } unset($key); } } switch ($chartOptions) { case 'studentResearch': $pieChart->setTitle(Locale::translate('proposal.studentInitiatedResearch') . ' ' . $endTitle); break; case 'kii': $pieChart->setTitle(Locale::translate('proposal.keyImplInstitution') . ' ' . $endTitle); break; case 'multiCountry': $pieChart->setTitle(Locale::translate('proposal.multiCountryResearch') . ' ' . $endTitle); break; case 'nationwide': $pieChart->setTitle(Locale::translate('proposal.nationwide') . ' ' . $endTitle); break; case 'proposalTypes': $pieChart->setTitle(Locale::translate('proposal.proposalType') . ' ' . $endTitle); break; case 'researchDomains': $pieChart->setTitle(Locale::translate('proposal.researchDomains') . ' ' . $endTitle); break; case 'researchFields': $pieChart->setTitle(Locale::translate('proposal.researchField') . ' ' . $endTitle); break; case 'dataCollection': $pieChart->setTitle(Locale::translate('proposal.dataCollection') . ' ' . $endTitle); break; case 'getIdentityRevealed': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.subjects") . ' - ' . Locale::translate('proposal.identityRevealedAbb') . ' ' . $endTitle); break; case 'getUnableToConsent': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.subjects") . ' - ' . Locale::translate('proposal.unableToConsentAbb') . ' ' . $endTitle); break; case 'getUnder18': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.subjects") . ' - ' . Locale::translate('proposal.under18Abb') . ' ' . $endTitle); break; case 'getDependentRelationship': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.subjects") . ' - ' . Locale::translate('proposal.dependentRelationshipAbb') . ' ' . $endTitle); break; case 'getEthnicMinority': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.subjects") . ' - ' . Locale::translate('proposal.ethnicMinorityAbb') . ' ' . $endTitle); break; case 'getImpairment': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.subjects") . ' - ' . Locale::translate('proposal.impairmentAbb') . ' ' . $endTitle); break; case 'getPregnant': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.subjects") . ' - ' . Locale::translate('proposal.pregnantAbb') . ' ' . $endTitle); break; case 'getNewTreatment': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.researchIncludes") . ' - ' . Locale::translate('proposal.newTreatmentAbb') . ' ' . $endTitle); break; case 'getBioSamples': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.researchIncludes") . ' - ' . Locale::translate('proposal.bioSamplesAbb') . ' ' . $endTitle); break; case 'exportHumanTissue': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.researchIncludes") . ' - ' . Locale::translate('proposal.exportHumanTissueAbb') . ' ' . $endTitle); break; case 'exportReason': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.researchIncludes") . ' - ' . Locale::translate('proposal.exportReason') . ' ' . $endTitle); break; case 'getRadiation': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.researchIncludes") . ' - ' . Locale::translate('proposal.radiationAbb') . ' ' . $endTitle); break; case 'getDistress': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.researchIncludes") . ' - ' . Locale::translate('proposal.distressAbb') . ' ' . $endTitle); break; case 'getInducements': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.researchIncludes") . ' - ' . Locale::translate('proposal.inducementsAbb') . ' ' . $endTitle); break; case 'getSensitiveInfo': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.researchIncludes") . ' - ' . Locale::translate('proposal.sensitiveInfoAbb') . ' ' . $endTitle); break; case 'getReproTechnology': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.researchIncludes") . ' - ' . Locale::translate('proposal.reproTechnologyAbb') . ' ' . $endTitle); break; case 'getGenetic': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.researchIncludes") . ' - ' . Locale::translate('proposal.geneticsAbb') . ' ' . $endTitle); break; case 'getStemCell': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.researchIncludes") . ' - ' . Locale::translate('proposal.stemCellAbb') . ' ' . $endTitle); break; case 'getBiosafety': $pieChart->setTitle(Locale::translate("editor.reports.riskAssessment.researchIncludes") . ' - ' . Locale::translate('proposal.biosafetyAbb') . ' ' . $endTitle); break; } foreach ($dataSetArray as $key => $value) { $dataSet->addPoint(new Point($key . ' (' . $value . ')', $value)); } $pieChart->setDataSet($dataSet); $pieChart->render("classes/lib/libchart/images/" . $journal->getLocalizedInitials() . '-' . Locale::translate('editor.reports.chart') . ".png"); $templateMgr =& TemplateManager::getManager(); $templateMgr->assign('chartLocation', "/classes/lib/libchart/images/" . $journal->getLocalizedInitials() . '-' . Locale::translate('editor.reports.chart') . ".png"); $templateMgr->assign('criterias', $criterias); $templateMgr->display('sectionEditor/reports/showChart.tpl'); }
case 6: $points -= 1; break; case 7: $points -= 2; break; case 8: $points += 2; break; case 9: $points += 1; break; } $summary[$points] += $count; } $dataSet = new XYDataSet(); foreach ($summary as $index => $count) { $dataSet->addPoint(new Point(number_format($index / 10, 1), $count)); } $chart = new VerticalBarChart(800, 400); $chart->setDataSet($dataSet); $chart->setTitle(gettext("assignment") . " " . $i); $chart->render(EXAM_ORGANIZATION_TEMP_DIR . $key . "assignment" . $i . ".png"); } for ($i = 1; $i <= $assignments; $i++) { switch (($i - 1) % 3) { case 0: $pdf->AddPage(); $y = 30; break; case 1: