//string que será retornada ao browser via JSON switch (strtoupper($funcao)) { /* Valor: GRAFICOSELECAO Pega os dados necessários para a geração dos gráficos da ferramenta seleção <iniciaDadosGrafico> */ case "GRAFICOSELECAO": include dirname(__FILE__) . "/../../classesphp/graficos.php"; if (!isset($_GET["exclui"])) { $_GET["exclui"] = ""; } if (!isset($_GET["tipo"])) { $_GET["tipo"] = "nenhum"; } if (!isset($_GET["ordenax"])) { $_GET["ordenax"] = "nao"; } $itemvalores = explode(",", $_GET["itemvalores"]); if (count($itemvalores) == 1) { $itemvalores = $itemvalores[0]; } $retorno = iniciaDadosGrafico($map_file, $tema, $_GET["exclui"], $_GET["itemclasses"], $itemvalores, $_GET["tipo"], false, $ext, true, $_GET["ordenax"]); break; } if (isset($map_file) && isset($postgis_mapa) && $map_file != "") { restauraCon($map_file, $postgis_mapa); } cpjson($retorno);
/** * Gera gráfico de distribuição de pontos (scatter) com agrupamento em pixels. */ function graficoScatterBins() { global $map_file, $itemvalores, $itemclasses, $tema, $exclui, $tipo, $R_path, $R_libpath; global $plota3d, $nbins, $percentual, $nome, $margem, $margemexterna, $margeminterna, $corlinha, $grid, $ppontos, $locaplic, $dir_tmp, $gw, $gh, $res, $bg, $collab, $colaxis, $cexlab, $cexaxis, $fontlab, $las, $tck, $cexmain, $border, $lty, $lwd, $lty, $lwd, $pch, $tpt, $main, $colmain, $fontmain, $ylab, $xlab; //pega os valores $dir = dirname(dirname($map_file)); if ($nome == "") { $temp = iniciaDadosGrafico($map_file, $tema, $exclui, $itemclasses, $itemvalores, "xy", $percentual, "", false); $nnval = $temp["dados"]; $nome = $dir . "/" . nomeRandomico(20); gravaDados($nnval, $nome); } $gfile_name = nomeRandomico(20); $rcode = iniciaParGrafico($gw, $gh, $res, $dir_tmp, $gfile_name, $margem, $margemexterna, $margeminterna, $locaplic, $R_libpath); $rcode[] = 'valores=read.table("' . $nome . '",header=TRUE,sep=";")'; $rcode[] = 'attach(valores)'; $rcode[] = 'library(gplots)'; $parametros = 'pty="m",main = "' . $main . '",col.main=' . $colmain . ',font.main=' . $fontmain . ',ylab = "' . $ylab . '",xlab = "' . $xlab . '",cex =' . $tpt . ',pch ="' . $pch . '",lty=' . $lty . ',lwd=' . $lwd . ',col.lab=' . $collab . ',col.axis=' . $colaxis . ',cex.lab=' . $cexlab . ',cex.axis=' . $cexaxis . ',font.lab=' . $fontlab . ',las=' . $las . ',tck=' . $tck . ',cex.main=' . $cexmain; if ($plota3d == "FALSE") { $rcode[] = "hist2d(x,y, nbins=" . $nbins . ", col = c('white',heat.colors(16))," . $parametros . ")"; $rcode[] = "rug(x,side=1)"; $rcode[] = "rug(y,side=2)"; $rcode[] = "grid()"; $rcode[] = "box()"; } else { $rcode[] = "h2d <- hist2d(x,y,show=FALSE, same.scale=TRUE, nbins=" . $nbins . ")"; $rcode[] = 'persp( h2d$x, h2d$y, h2d$counts,ticktype="detailed", theta=30, phi=30,expand=0.5, shade=0.5, col="cyan", ltheta=-30,' . $parametros . ')'; } $rcode[] = 'close.screen(all = TRUE)'; $rcode[] = 'dev.off()'; $r = executaR($rcode, $dir_tmp, $R_path); $map = ms_newMapObj($map_file); $webo = $map->web; $url = dirname($webo->imageurl) . "/"; return $url . $gfile_name . ".png," . $url . basename($nome) . "," . $nome; }