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); }
<?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; }
/** * * * @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; }