本文整理汇总了PHP中PiePlot::ExplodeAll方法的典型用法代码示例。如果您正苦于以下问题:PHP PiePlot::ExplodeAll方法的具体用法?PHP PiePlot::ExplodeAll怎么用?PHP PiePlot::ExplodeAll使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PiePlot
的用法示例。
在下文中一共展示了PiePlot::ExplodeAll方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: _renderPieChart
private function _renderPieChart($groupCount, $dimensions = '2d', $doughnut = False, $multiplePlots = False)
{
require_once 'jpgraph_pie.php';
if ($dimensions == '3d') {
require_once 'jpgraph_pie3d.php';
}
$this->_renderPiePlotArea($doughnut);
$iLimit = $multiplePlots ? $groupCount : 1;
for ($groupID = 0; $groupID < $iLimit; ++$groupID) {
$grouping = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotGrouping();
$exploded = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotStyle();
if ($groupID == 0) {
$labelCount = count($this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex(0)->getPointCount());
if ($labelCount > 0) {
$datasetLabels = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotCategoryByIndex(0)->getDataValues();
$datasetLabels = $this->_formatDataSetLabels($groupID, $datasetLabels, $labelCount);
}
}
$seriesCount = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotSeriesCount();
$seriesPlots = array();
// For pie charts, we only display the first series: doughnut charts generally display all series
$jLimit = $multiplePlots ? $seriesCount : 1;
// Loop through each data series in turn
for ($j = 0; $j < $jLimit; ++$j) {
$dataValues = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($j)->getDataValues();
// Fill in any missing values in the $dataValues array
$testCurrentIndex = 0;
foreach ($dataValues as $k => $dataValue) {
while ($k != $testCurrentIndex) {
$dataValues[$testCurrentIndex] = null;
++$testCurrentIndex;
}
++$testCurrentIndex;
}
if ($dimensions == '3d') {
$seriesPlot = new PiePlot3D($dataValues);
} else {
if ($doughnut) {
$seriesPlot = new PiePlotC($dataValues);
} else {
$seriesPlot = new PiePlot($dataValues);
}
}
if ($multiplePlots) {
$seriesPlot->SetSize(($jLimit - $j) / ($jLimit * 4));
}
if ($doughnut) {
$seriesPlot->SetMidColor('white');
}
$seriesPlot->SetColor(self::$_colourSet[self::$_plotColour++]);
if (count($datasetLabels) > 0) {
$seriesPlot->SetLabels(array_fill(0, count($datasetLabels), ''));
}
if ($dimensions != '3d') {
$seriesPlot->SetGuideLines(false);
}
if ($j == 0) {
if ($exploded) {
$seriesPlot->ExplodeAll();
}
$seriesPlot->SetLegends($datasetLabels);
}
$this->_graph->Add($seriesPlot);
}
}
}
示例2: array
<?php
include "../jpgraph.php";
include "../jpgraph_pie.php";
$data = array(40, 60, 31, 35);
// A new pie graph
$graph = new PieGraph(250, 200, "auto");
$graph->SetShadow();
// Title setup
$graph->title->Set("Exploding all slices");
$graph->title->SetFont(FF_FONT1, FS_BOLD);
// Setup the pie plot
$p1 = new PiePlot($data);
// Adjust size and position of plot
$p1->SetSize(0.35);
$p1->SetCenter(0.5, 0.52);
// Setup slice labels and move them into the plot
$p1->value->SetFont(FF_FONT1, FS_BOLD);
$p1->value->SetColor("darkred");
$p1->SetLabelPos(0.65);
// Explode all slices
$p1->ExplodeAll(10);
// Add drop shadow
$p1->SetShadow();
// Finally add the plot
$graph->Add($p1);
// ... and stroke it
$graph->Stroke();
示例3: PieGraph
// Create the Pie Graph.
$graph = new PieGraph(890, 770);
$graph->SetAntiAliasing();
$graph->SetShadow();
// Set A title for the plot
$graph->title->Set($m);
$graph->title->SetFont(FF_VERDANA, FS_BOLD, 12);
$graph->title->SetColor('black');
$graph->title->SetMargin(10);
$graph->subtitle->SetFont(FF_ARIAL, FS_BOLD, 10);
$graph->subtitle->Set('Importe Total $ ' . $importe);
// Create pie plot
$p1 = new PiePlot($datay);
$p1->SetSize(0.3);
$p1->SetCenter(0.5, 0.32);
$p1->ExplodeAll(5);
$p1->SetShadow();
$p1->SetSliceColors($color);
$p1->SetGuideLines(true, false);
$p1->SetGuideLinesAdjust(1.1);
$p1->SetStartAngle(200);
// Setup the labels to be displayed
$p1->SetLabels($name);
$p1->SetLegends($datax);
$graph->legend->SetPos(0.39, 0.97, 'center', 'bottom');
$graph->legend->SetColumns(2);
// This method adjust the position of the labels. This is given as fractions
// of the radius of the Pie. A value < 1 will put the center of the label
// inside the Pie and a value >= 1 will pout the center of the label outside the
// Pie. By default the label is positioned at 0.5, in the middle of each slice.
$p1->SetLabelPos(0.55);
示例4: parse
function parse($input, $parser)
{
global $jpgraphLabelType;
foreach (split("\n", $input) as $line) {
// skip empty line or comments
if (preg_match("/^(\\s*)#.*\$|^(\\s*)\$/", $line)) {
continue;
}
// Storing data
$raw_data = split($this->fieldsep, $line);
if (count($raw_data) == 2) {
$this->labels[] = $raw_data[0];
$this->datay[] = $raw_data[1];
} else {
$this->datay[] = $raw_data[0];
}
}
if ($this->is3d) {
$pie = new PiePlot3D($this->datay);
$pie->SetAngle($this->angle);
} else {
$pie = new PiePlot($this->datay);
}
if ($this->center) {
$tmp = split(",", $this->center);
if (is_array($tmp) && count($tmp) == 2) {
$pie->SetCenter($tmp[0], $tmp[1]);
} else {
if (is_array($tmp) && count($tmp) == 1) {
$pie->SetCenter($tmp[0]);
}
}
}
if ($this->labeltype) {
$label_type = $jpgraphLabelType[$this->labeltype];
if (!$label_type) {
throw new JpgraphMWException("Unknown label type(" . $this->labeltype . "). Possible values are: " . implode(", ", array_keys($jpgraphLabelType)));
}
$pie->SetLabelType($label_type);
}
if ($this->labelformat) {
$pie->value->SetFormat($this->labelformat);
}
if ($this->usettf) {
$pie->value->SetFont($this->font);
}
$pie->value->Show($this->showlabel);
$explode_pie_list = split(",", $this->explode);
if (count($explode_pie_list) == 1) {
$pie->ExplodeAll($explode_pie_list[0]);
} else {
$pie->Explode($explode_pie_list);
}
if (count($this->labels) == count($this->datay)) {
$pie->SetLegends($this->labels);
}
$this->graph->Add($pie);
}
示例5: header
//echo $living;
//echo $transportation;
//echo $healthcare;
//echo $personal_loan;
//echo $eatingout;
//echo $entertainment;
//echo $children;
//echo $debtpayment;
if ($total > $salary) {
header('Location:http://localhost/ExpenseTracker/index.html');
}
$data = array($housing, $utilities, $household, $groceries, $living, $transportation, $healthcare, $personal_loan, $eatingout, $entertainment, $children, $debtpayment);
//$data = array($a,$_POST['w1utilities'], $_POST['w1household'],$_POST['w1groceries'],$_POST['w1living'],$_POST['w1transport'],$_POST['w1health'],$_POST['w1loan'],$_POST['w1eat'],$_POST['w1entertain'],$_POST['w1child'],$_POST['w1debt']);
//$data2 = array($_POST['w2housing'],$_POST['w2utilities'], $_POST['w2household'],$_POST['w2groceries'],$_POST['w2living'],$_POST['w2transport'],$_POST['w2health'],$_POST['w2loan'],$_POST['w2eat'],$_POST['w2entertain'],$_POST['w2child'],$_POST['w2debt']);
$graph = new PieGraph(900, 800);
$lb1 = array("Housing\n%.1f%%", "Utilities\n%.1f%%", "HouseHold\n%.1f%%", "Groceries\n%.1f%%", "Living\n%.1f%%", "Transport\n%.1f%%", "HealthCare\n%.1f%%", "PersonalLoan\n%.1f%%", "EatingOut\n%.1f%%", "Entertainment\n%.1f%%", "Children%.1f%%", "DebtPayment%.1f%%");
$graph->SetShadow();
$graph->title->Set("Expense_Tracker");
$p1 = new PiePlot($data);
$p1->SetLabels($lb1);
$p1->ExplodeAll();
$graph->Add($p1);
$graph->Stroke();
//$pieplot->SetSize(0.5);
//$pieplot->SetCenter(0.5, 0.4);
/*$graph2 = new PieGraph(500, 400);
$graph2->SetShadow();
$graph2->title->Set("Week 2");
$p2 = new PiePlot($data2);
$graph2->Add($p2);
$graph2->Stroke(); */