示例#1
0
 public function createScoreByThemeGraphic($questionnaireId, $userId, $filepath, $verificador = false)
 {
     $graphDefinitions = $this->getScoreByThemeGraphicDefinitions($questionnaireId, $userId, $verificador);
     $graph = new RadarGraph(600, 300);
     $graph->SetColor("white");
     $graph->SetShadow();
     $graph->SetCenter(0.52, 0.55);
     $graph->HideTickMarks();
     $graph->SetTitles($graphDefinitions['ThemeNames']);
     $graph->yscale->SetAutoMax(100);
     $graph->title->Set("Ciclo " . date('Y'));
     $graph->title->SetFont(FF_FONT1, FS_BOLD);
     $graph->axis->SetFont(FF_FONT1, FS_NORMAL);
     $graph->axis->SetWeight(1);
     $graph->axis->SetColor("darkgray");
     $graph->grid->SetLineStyle("dashed");
     $graph->grid->SetColor("darkgray");
     $graph->grid->SetWeight(1);
     $graph->grid->Show();
     $actual = new RadarPlot($graphDefinitions['ThemeScores']);
     $actual->SetColor('darkorchid4', 'bisque');
     $actual->SetLineWeight(4);
     $graph->Add($actual);
     return $graph->Stroke($filepath);
 }
示例#2
0
<?php

// content="text/plain; charset=utf-8"
require_once 'jpgraph/jpgraph.php';
require_once 'jpgraph/jpgraph_radar.php';
// Create the basic radar graph
$graph = new RadarGraph(300, 200);
$graph->img->SetAntiAliasing();
// Set background color and shadow
$graph->SetColor("white");
$graph->SetShadow();
// Position the graph
$graph->SetCenter(0.4, 0.55);
// Setup the axis formatting
$graph->axis->SetFont(FF_FONT1, FS_BOLD);
// Setup the grid lines
$graph->grid->SetLineStyle("solid");
$graph->grid->SetColor("navy");
$graph->grid->Show();
$graph->HideTickMarks();
// Setup graph titles
$graph->title->Set("Quality result");
$graph->title->SetFont(FF_FONT1, FS_BOLD);
$graph->SetTitles($gDateLocale->GetShortMonth());
// Create the first radar plot
$plot = new RadarPlot(array(70, 80, 60, 90, 71, 81, 47));
$plot->SetLegend("Goal");
$plot->SetColor("red", "lightred");
$plot->SetFill(false);
$plot->SetLineWeight(2);
// Create the second radar plot
 /**
  * 
  * Utiliza lib jpgraph
  * 
  * @param type $arrCriteria
  * @param type $arrRadarData
  * @param type $arrTabulation
  * @param type $arrPunctuation
  * @param type $dirName
  * @return boolean|string
  */
 public function makeRadarPlot($arrCriteria, $arrRadarData, $arrTabulation, $arrPunctuation, $dirName)
 {
     // content="text/plain; charset=utf-8"
     require_once APPLICATION_PATH_LIBS . '/jpgraph/src/jpgraph.php';
     require_once APPLICATION_PATH_LIBS . '/jpgraph/src/jpgraph_radar.php';
     $criterios = array();
     foreach ($arrCriteria as $chave => $valor) {
         $criterios[$chave] = utf8_decode(" " . $chave . " - " . $valor);
     }
     if (!is_array($arrRadarData)) {
         return false;
     }
     $titles = array_values($criterios);
     $data = array_values($arrRadarData);
     $graph = new RadarGraph(635, 355);
     $graph->SetShadow();
     $graph->SetScale('lin', $aYMin = 0, $aYMax = 100);
     $graph->yscale->ticks->Set(50, 10);
     $graph->title->Set("Porcentagem de acertos por Critério");
     $graph->title->SetFont(FF_VERDANA, FS_NORMAL, 12);
     //$graph->subtitle->Set("Pontuação por Critério em %");
     //$graph->subtitle->SetFont(FF_VERDANA,FS_ITALIC,10);
     $graph->SetTitles($titles);
     $graph->SetCenter(0.5, 0.54);
     //$graph->HideTickMarks();
     $graph->ShowMinorTickMArks();
     $graph->SetColor('white');
     $graph->grid->SetLineStyle('dashed');
     $graph->axis->SetColor('darkgray@0.3');
     $graph->grid->SetColor('darkgray@0.3');
     $graph->grid->Show();
     $graph->SetGridDepth(DEPTH_BACK);
     $plot = new RadarPlot($data);
     $plot->SetColor('red@0.2');
     $plot->SetLineWeight(3);
     $plot->SetFillColor('skyblue4@0.7');
     $graph->Add($plot);
     $radarPath = $dirName . "radarTMP.png";
     $graph->Stroke($radarPath);
     return $radarPath;
 }
示例#4
0
 /**
  * 
  * 
  * @param type $arrCriteria
  * @param type $arrRadarData
  * @param type $arrTabulation
  * @param type $arrPunctuation
  * @param type $dirName
  * @return boolean|string
  */
 public function makeRadarPlot($arrCriteria, $arrRadarData, $arrTabulation, $arrPunctuation, $dirName, $strCiclo)
 {
     //        var_dump('arrCriteria: ',$arrCriteria);
     //        echo "<br><br>";
     //var_dump('arrRadarData: ',$arrRadarData);
     //echo "<br><br>";
     //        var_dump('arrTabulation: ',$arrTabulation);
     //        echo "<br><br>";
     //        var_dump('arrPunctuation: ',$arrPunctuation);
     //
     //        //exit;
     // content="text/plain; charset=utf-8"
     require_once APPLICATION_PATH_LIBS . '/jpgraph/src/jpgraph.php';
     require_once APPLICATION_PATH_LIBS . '/jpgraph/src/jpgraph_radar.php';
     $criterios = array();
     $criterios[1] = utf8_decode($arrCriteria[1]);
     $criterios[8] = utf8_decode($arrCriteria[8]);
     $criterios[7] = utf8_decode($arrCriteria[7]);
     $criterios[6] = utf8_decode($arrCriteria[6]);
     $criterios[5] = utf8_decode($arrCriteria[5]);
     $criterios[4] = utf8_decode($arrCriteria[4]);
     $criterios[3] = utf8_decode($arrCriteria[3]);
     $criterios[2] = utf8_decode($arrCriteria[2]);
     //var_dump('criterios: ', $criterios);
     //echo "<br><br>";
     if (!is_array($arrRadarData)) {
         return false;
     }
     //mudanca de ultima hora para alterar o sentido no print do radar na devolutiva.
     //nao ha um metodo na lib jpgraph que altere o sentido de rotacao ao printar o grafico radar.
     $arrRadarDataMartelada = array();
     $arrRadarDataMartelada[1] = $arrRadarData[1];
     $arrRadarDataMartelada[8] = $arrRadarData[8];
     $arrRadarDataMartelada[7] = $arrRadarData[7];
     $arrRadarDataMartelada[6] = $arrRadarData[6];
     $arrRadarDataMartelada[5] = $arrRadarData[5];
     $arrRadarDataMartelada[4] = $arrRadarData[4];
     $arrRadarDataMartelada[3] = $arrRadarData[3];
     $arrRadarDataMartelada[2] = $arrRadarData[2];
     $titles = array_values($criterios);
     //$data = array_values($arrRadarData);
     //implementa martelada
     $data = array_values($arrRadarDataMartelada);
     //var_dump('arrRadarDataMartelada', $arrRadarDataMartelada);
     //echo "<br><br>";
     //var_dump('data', $data);
     $this->setArrCriteria($arrCriteria);
     $this->setArrPunctuation($arrPunctuation);
     $this->setArrRadarData($arrRadarData);
     $this->setArrTabulation($arrTabulation);
     $graph = new RadarGraph(635, 355);
     $graph->SetShadow();
     $graph->SetScale('lin', $aYMin = 0, $aYMax = 100);
     $graph->yscale->ticks->Set(50, 10);
     //$graph->title->Set("Porcentagem de acertos por Critério");
     $programaTipo = Zend_Registry::get('programaTipo');
     $strCiclo = $programaTipo != 'MpeBrasil' ? '' : ' Ciclo ' . $strCiclo;
     $tituloCiclo = "Desempenho da Empresa" . $strCiclo;
     $graph->title->Set($tituloCiclo);
     $graph->title->SetFont(FF_VERDANA, FS_NORMAL, 12);
     //$graph->subtitle->Set("Pontuação por Critério em %");
     //$graph->subtitle->SetFont(FF_VERDANA,FS_ITALIC,10);
     $graph->SetTitles($titles);
     $graph->SetCenter(0.5, 0.54);
     //$graph->HideTickMarks();
     $graph->ShowMinorTickMArks();
     $graph->SetColor('white');
     $graph->grid->SetLineStyle('dashed');
     $graph->axis->SetColor('darkgray@0.3');
     $graph->grid->SetColor('darkgray@0.3');
     $graph->grid->Show();
     $graph->SetGridDepth(DEPTH_BACK);
     $plot = new RadarPlot($data);
     $plot->SetColor('red@0.2');
     $plot->SetLineWeight(3);
     $plot->SetFillColor('skyblue4@0.7');
     $graph->Add($plot);
     $radarPath = $dirName . "radarTMP.png";
     $graph->Stroke($radarPath);
     return $radarPath;
 }