本文整理汇总了PHP中BarPlot::setFillColor方法的典型用法代码示例。如果您正苦于以下问题:PHP BarPlot::setFillColor方法的具体用法?PHP BarPlot::setFillColor怎么用?PHP BarPlot::setFillColor使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BarPlot
的用法示例。
在下文中一共展示了BarPlot::setFillColor方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: addPlots
function addPlots($data)
{
$plots = array();
$labels = array();
$i = 0;
foreach ($data as $key => $plot_data) {
$plot = new BarPlot(array_values($plot_data));
$plot->setLegend(prettify($key));
$plot->setFillColor(self::$colours[$i]);
$i++;
$plots[] = $plot;
$labels = array_merge($labels, array_keys($plot_data));
}
$group_plot = new GroupBarPlot($plots);
$this->grapher->add($group_plot);
$this->grapher->xaxis->setTickLabels($labels);
}
示例2: displayRepositoryPushesByWeek
/**
* Build a JpGraph barPlot object with retrived data.
*
* @return BarPlot
*/
private function displayRepositoryPushesByWeek()
{
$nbRepo = count($this->repoList);
$colors = array_slice($GLOBALS['HTML']->getChartColors(), 0, $nbRepo);
$nbColors = count($colors);
$i = 0;
$bplot = array();
foreach ($this->repoList as $repository) {
$this->legend = null;
$pushes = $this->getRepositoryPushesByWeek($repository);
if ($this->displayChart) {
$b2plot = new BarPlot($pushes);
$color = $colors[$i++ % $nbColors];
$b2plot->SetColor($color . ':0.7');
$b2plot->setFillColor($color);
if (!empty($this->legend)) {
$b2plot->SetLegend($this->legend);
}
$bplot[] = $b2plot;
}
}
return $bplot;
}
示例3: visitor_week
/**
* Collects and renders visitor/week report data
*/
public function visitor_week()
{
$myConfig = $this->getConfig();
$oDb = oxDb::getDb();
$aDataX = array();
$aDataX2 = array();
$aDataX3 = array();
$aDataX4 = array();
$aDataX5 = array();
$aDataX6 = array();
$aDataY = array();
$sTimeTo = $oDb->quote(date("Y-m-d H:i:s", strtotime(oxRegistry::getConfig()->getRequestParameter("time_to"))));
$sTimeFrom = $oDb->quote(date("Y-m-d H:i:s", strtotime(oxRegistry::getConfig()->getRequestParameter("time_from"))));
$sSQL = "select oxtime, count(*) as nrof from oxlogs where oxtime >= {$sTimeFrom} and oxtime <= {$sTimeTo} group by oxsessid order by oxtime";
$aTemp = array();
$rs = $oDb->execute($sSQL);
if ($rs != false && $rs->recordCount() > 0) {
while (!$rs->EOF) {
$aTemp[oxRegistry::get("oxUtilsDate")->getWeekNumber($myConfig->getConfigParam('iFirstWeekDay'), strtotime($rs->fields[0]))]++;
$rs->moveNext();
}
}
// initializing
list($iFrom, $iTo) = $this->getWeekRange();
for ($i = $iFrom; $i < $iTo; $i++) {
$aDataX[$i] = 0;
$aDataX2[$i] = 0;
$aDataX3[$i] = 0;
$aDataX4[$i] = 0;
$aDataX5[$i] = 0;
$aDataX6[$i] = 0;
$aDataY[] = "KW " . $i;
}
foreach ($aTemp as $key => $value) {
$aDataX[$key] = $value;
$aDataX2[$key] = 0;
$aDataX3[$key] = 0;
$aDataX4[$key] = 0;
$aDataX5[$key] = 0;
$aDataX6[$key] = 0;
$aDataY[] = "KW " . $key;
}
// collects sessions what executed 'order' function
$sQ = "select oxtime, oxsessid FROM `oxlogs` where oxclass = 'order' and oxfnc = 'execute' and oxtime >= {$sTimeFrom} and oxtime <= {$sTimeTo} group by oxsessid";
$aTempOrder = $this->_collectSessions($sQ);
// collects sessions what executed order class
$sQ = "select oxtime, oxsessid from `oxlogs` where oxclass = 'order' and oxtime >= {$sTimeFrom} and oxtime <= {$sTimeTo} group by oxsessid";
$aTempExecOrdersSessions = $this->_collectOrderSessions($sQ, $aTempOrder, $aDataX6, false);
// collects sessions what executed payment class
$sQ = "select oxtime, oxsessid from `oxlogs` where oxclass = 'payment' and oxtime >= {$sTimeFrom} and oxtime <= {$sTimeTo} group by oxsessid";
$aTempPaymentSessions = $this->_collectPaymentSessions($sQ, $aTempOrder, $aTempExecOrdersSessions, $aDataX2, false);
// collects sessions what executed 'user' class
$sQ = "select oxtime, oxsessid from `oxlogs` where oxclass = 'user' and oxtime >= {$sTimeFrom} and oxtime <= {$sTimeTo} group by oxsessid";
$aTempUserSessions = $this->_collectUserSessionsForVisitorMonth($sQ, $aTempOrder, $aTempExecOrdersSessions, $aTempPaymentSessions, $aDataX2, false);
// collects sessions what executed 'tobasket' function
$sQ = "select oxtime, oxsessid from `oxlogs` where oxclass = 'basket' and oxtime >= {$sTimeFrom} and oxtime <= {$sTimeTo} group by oxsessid";
$this->_collectToBasketSessions($sQ, $aTempOrder, $aTempExecOrdersSessions, $aTempPaymentSessions, $aTempUserSessions, $aDataX4, false);
// orders made
$sQ = "select oxorderdate from oxorder where oxorderdate >= {$sTimeFrom} and oxorderdate <= {$sTimeTo} order by oxorderdate";
$this->_collectOrdersMade($sQ, $aDataX5, false);
header("Content-type: image/png");
// New graph with a drop shadow
$graph = $this->getGraph(max(800, count($aDataX) * 80), 600);
// Description
$graph->xaxis->setTickLabels($aDataY);
// Set title and subtitle
$graph->title->set("Woche");
// Create the bar plot
$bplot2 = new BarPlot(array_values($aDataX2));
$bplot2->setFillColor("#9966cc");
$bplot2->setLegend("Best.Abbr. in Bezahlmethoden");
// Create the bar plot
$bplot3 = new BarPlot(array_values($aDataX3));
$bplot3->setFillColor("#ffcc00");
$bplot3->setLegend("Best.Abbr. in Benutzer");
// Create the bar plot
$bplot4 = new BarPlot(array_values($aDataX4));
$bplot4->setFillColor("#6699ff");
$bplot4->setLegend("Best.Abbr. in Warenkorb");
// Create the bar plot
$bplot6 = new BarPlot(array_values($aDataX6));
$bplot6->setFillColor("#ff0099");
$bplot6->setLegend("Best.Abbr. in Bestellbestaetigung");
// Create the bar plot
$bplot5 = new BarPlot(array_values($aDataX5));
$bplot5->setFillColor("silver");
$bplot5->setLegend("Bestellungen");
// Create the grouped bar plot
$gbplot = new groupBarPlot(array($bplot4, $bplot3, $bplot2, $bplot6, $bplot5));
$graph->add($gbplot);
// Finally output the image
$graph->stroke();
}
示例4: visitor_week
/**
* Collects and renders visitor/week report data
*/
public function visitor_week()
{
$myConfig = $this->getConfig();
$oDb = oxDb::getDb();
$aDataX = array();
$aDataY = array();
$sTimeTo = $oDb->quote(date("Y-m-d H:i:s", strtotime(oxRegistry::getConfig()->getRequestParameter("time_to"))));
$sTimeFrom = $oDb->quote(date("Y-m-d H:i:s", strtotime(oxRegistry::getConfig()->getRequestParameter("time_from"))));
$sSQL = "select oxtime, count(*) as nrof from oxlogs where oxtime >= {$sTimeFrom} and oxtime <= {$sTimeTo} group by oxsessid order by oxtime";
$aTemp = array();
$rs = $oDb->execute($sSQL);
if ($rs != false && $rs->recordCount() > 0) {
while (!$rs->EOF) {
//$aTemp[date( "W", strtotime( $rs->fields[0]))]++;
$aTemp[oxRegistry::get("oxUtilsDate")->getWeekNumber($myConfig->getConfigParam('iFirstWeekDay'), strtotime($rs->fields[0]))]++;
$rs->moveNext();
}
}
// initializing
list($iFrom, $iTo) = $this->getWeekRange();
for ($i = $iFrom; $i < $iTo; $i++) {
$aDataX[$i] = 0;
$aDataX2[$i] = 0;
$aDataX3[$i] = 0;
$aDataY[] = "KW " . $i;
}
foreach ($aTemp as $key => $value) {
$aDataX[$key] = $value;
$aDataX2[$key] = 0;
$aDataX3[$key] = 0;
$aDataY[] = "KW " . $key;
}
// buyer
$sSQL = "select oxorderdate from oxorder where oxorderdate >= {$sTimeFrom} and oxorderdate <= {$sTimeTo} order by oxorderdate";
$aTemp = array();
$rs = $oDb->execute($sSQL);
if ($rs != false && $rs->recordCount() > 0) {
while (!$rs->EOF) {
//$aTemp[date( "W", strtotime( $rs->fields[0]))]++;
$aTemp[oxRegistry::get("oxUtilsDate")->getWeekNumber($myConfig->getConfigParam('iFirstWeekDay'), strtotime($rs->fields[0]))]++;
$rs->moveNext();
}
}
foreach ($aTemp as $key => $value) {
$aDataX2[$key] = $value;
}
// newcustomer
$sSQL = "select oxcreate from oxuser where oxcreate >= {$sTimeFrom} and oxcreate <= {$sTimeTo} order by oxcreate";
$aTemp = array();
$rs = $oDb->execute($sSQL);
if ($rs != false && $rs->recordCount() > 0) {
while (!$rs->EOF) {
//$aTemp[date( "W", strtotime( $rs->fields[0]))]++;
$aTemp[oxRegistry::get("oxUtilsDate")->getWeekNumber($myConfig->getConfigParam('iFirstWeekDay'), strtotime($rs->fields[0]))]++;
$rs->moveNext();
}
}
foreach ($aTemp as $key => $value) {
$aDataX3[$key] = $value;
}
header("Content-type: image/png");
// New graph with a drop shadow
$graph = new Graph(max(800, count($aDataX) * 80), 600);
$graph->setBackgroundImage($myConfig->getImageDir(true) . "/reportbgrnd.jpg", BGIMG_FILLFRAME);
// Use a "text" X-scale
$graph->setScale("textlin");
// Label align for X-axis
$graph->xaxis->setLabelAlign('center', 'top', 'right');
// Label align for Y-axis
$graph->yaxis->setLabelAlign('right', 'bottom');
$graph->setShadow();
// Description
$graph->xaxis->setTickLabels($aDataY);
// Set title and subtitle
$graph->title->set("Woche");
// Use built in font
$graph->title->setFont(FF_FONT1, FS_BOLD);
$aDataFinalX = array();
foreach ($aDataX as $dData) {
$aDataFinalX[] = $dData;
}
// Create the bar plot
$bplot = new BarPlot($aDataFinalX);
$bplot->setFillGradient("navy", "lightsteelblue", GRAD_VER);
$bplot->setLegend("Besucher");
$aDataFinalX2 = array();
foreach ($aDataX2 as $dData) {
$aDataFinalX2[] = $dData;
}
// Create the bar plot
$bplot2 = new BarPlot($aDataFinalX2);
$bplot2->setFillColor("orange");
$bplot2->setLegend("Kaeufer");
$aDataFinalX3 = array();
foreach ($aDataX3 as $dData) {
$aDataFinalX3[] = $dData;
}
//.........这里部分代码省略.........
示例5: process
function process($owner_type, $owner_id)
{
$dao = new SvnCommitsDao(CodendiDataAccess::instance());
//The default duration is 3 months back
$nb_weeks = 4 * 3;
$duration = 7 * $nb_weeks;
$day = 24 * 3600;
$week = 7 * $day;
//compute the stats
$stats = array();
$nb_of_commits = array();
foreach ($dao->statsByGroupId($owner_id, $duration) as $row) {
$stats[$row['whoid']]['by_day'][$row['day'] * $day] = $row['nb_commits'];
$stats[$row['whoid']]['by_week'][$row['week']] = $row['nb_commits'];
$this->tmp_nb_of_commit[$row['whoid']] = (isset($this->tmp_nb_of_commit[$row['whoid']]) ? $this->tmp_nb_of_commit[$row['whoid']] : 0) + $row['nb_commits'];
}
if (count($stats)) {
//sort the results
uksort($stats, array($this, 'sortByTop'));
$today = $_SERVER['REQUEST_TIME'];
$start_of_period = strtotime("-{$nb_weeks} weeks");
//fill-in the holes
$tmp_stats = array();
foreach ($stats as $whoid => $stat) {
$tmp_stats = array();
for ($i = $start_of_period; $i <= $today; $i += $week) {
$w = (int) date('W', $i);
$tmp_stats[$w] = isset($stat['by_week'][$w]) ? $stat['by_week'][$w] : '0';
}
$stats[$whoid]['by_week'] = $tmp_stats;
}
//fill-in the labels
$dates = array();
for ($i = $start_of_period; $i <= $today; $i += $week) {
$dates[] = date('M d', $i);
}
$nb_commiters = count($stats);
$widgetFormatter = new Widget_ProjectSvnStats_Layout($nb_commiters);
$legendRatio = $widgetFormatter->legend_ratio;
$chartWidth = $widgetFormatter->getChartWidth();
$chartHeigh = $widgetFormatter->getChartHeigh();
$legend_x_position = $widgetFormatter->getLegendXPosition();
$legend_y_position = $widgetFormatter->getLegendYPosition();
$imgBottomMargin = $widgetFormatter->getImageBottomMargin();
$legendAlign = $widgetFormatter->getLegendAlign();
// @TODO: Centralize stuff at Chart class level to properly render a Jpgraph chart with a large number of legend items
//Build the chart
$c = new Chart($chartWidth, $chartHeigh);
$c->SetScale('textlin');
$c->img->SetMargin(40, 20, 20, $imgBottomMargin);
$c->xaxis->SetTickLabels($dates);
$c->legend->Pos($legend_x_position, $legend_y_position, 'left', $legendAlign);
if ($legendRatio >= 1) {
$c->legend->setColumns(2);
}
$colors = array_reverse(array_slice($GLOBALS['HTML']->getChartColors(), 0, $nb_commiters));
$nb_colors = count($colors);
$bars = array();
$i = 0;
foreach ($stats as $whoid => $stat) {
$l = new BarPlot(array_values($stat['by_week']));
$color = $colors[$i++ % $nb_colors];
$l->SetColor($color . ':0.7');
$l->setFillColor($color);
if ($user = UserManager::instance()->getUserById($whoid)) {
$l->SetLegend(UserHelper::instance()->getDisplayNameFromUser($user));
} else {
$l->SetLegend('Unknown user (' . (int) $whoid . ')');
}
$bars[] = $l;
}
$gbplot = new AccBarPlot($bars);
$c->Add($gbplot);
} else {
$error = "No commits in the last {$duration} days";
$c = new ErrorChart("No logged commits", $error, 400, 300);
}
echo $c->stroke();
}
示例6: generateStackedBarGraph
function generateStackedBarGraph($data, $legend_index = 0, $image = false, $aFillColors = array('red', 'green', 'orange', 'yellow', 'aqua', 'lime', 'teal', 'purple1', 'lightblue', 'blue'), $length = 500, $width = 300, $fontFamily = FF_FONT1, $fontStyle = FS_BOLD, $fontSize = '', $fontColor = 'black', $marginColor = 'white')
{
include_once XHELP_JPGRAPH_PATH . '/jpgraph_bar.php';
$graph = new Graph($length, $width);
$graph->title->Set($this->meta['name']);
$graph->SetScale("textint");
$graph->yaxis->scale->SetGrace(30);
//$graph->ygrid->Show(true,true);
$graph->ygrid->SetColor('gray', 'lightgray@0.5');
// Setup graph colors
$graph->SetMarginColor($marginColor);
$datazero = array(0, 0, 0, 0);
// Create the "dummy" 0 bplot
$bplotzero = new BarPlot($datazero);
// Set names as x-axis label
$graph->xaxis->SetTickLabels($data[$legend_index]);
// for loop through data array starting with element 1
$aPlots = array();
for ($i = 1; $i < count($data); $i++) {
$ybplot1 = new BarPlot($data[$i]);
$ybplot1->setFillColor($aFillColors[$i]);
$ybplot1->value->Show();
$ybplot1->value->SetFont($fontFamily, $fontStyle, $fontSize);
$ybplot1->value->SetColor($fontColor);
$aPlots[] = $ybplot1;
}
//$ybplot = new AccBarPlot(array($ybplot1,$bplotzero));
$ybplot = new AccBarPlot($aPlots, $bplotzero);
$graph->Add($ybplot);
// Set graph background image
$graph->SetBackgroundImage($image, BGIMG_FILLFRAME);
$graph->Stroke();
}