[R-br] Fwd: Representação de gráfico tipo torta em um shapefile
ASANTOS
alexandresantosbr em yahoo.com.br
Quinta Maio 29 20:17:57 BRT 2014
Boa noite Éder,
Tentei seguir seu roteiro usando maptools::unionSpatialPolygons()
e não deu certo a dissolução de bacias, fiz:
require(shapefiles)
library(maptools)
library(gpclib)
library(rgdal)
library(PBSmapping)
#Shapefile e dados
links <- c(
"https://www.dropbox.com/s/3ph2630xicpexo0/dem.crop.final.tif",
"https://www.dropbox.com/s/3ph2630xicpexo0/dem.crop.final.tif",
"https://www.dropbox.com/s/3ph2630xicpexo0/dem.crop.final.tif",
"https://www.dropbox.com/s/3ph2630xicpexo0/dem.crop.final.tif")
if (sum(sapply(basename(links), file.exists))<4) {
lapply(links, function(a) tryCatch(download.file(a,
dest=basename(a), mode='wb'),
error=function(...)
message("ERRO!")))} else message('OK!')
#
#abrido shapefile
#
bacias <- readOGR(".", "sa_bas_ll_r500m")
CRS.new <- CRS("+proj=longlat +datum=WGS84")
proj4string(bacias) <- CRS.new
plot(bacias)
str(bacias)
## Separando os ID dos atributos do LEVEL2, pois tenho 6 níveis de bacias
IDlevel2<- cut(bacias em data$LEVEL2, range(bacias em data$LEVEL2),
include.lowest=TRUE)
## Bacias "dissolvidas" para o nível 2
Dissolve_bacia <- unionSpatialPolygons(bacias ,Dissolve_bacia)
Dissolve_bacia_2 <- SpatialPolygons2PolySet(DissolveResult)
## Representação gráfica
plotPolys(Dissolve_bacia_2 , proj =
TRUE,col="wheat1",xlab="longitude",ylab="latitude")
E a figura resultante em plotPolys não são minhas bacias no nível 2.
Poderia me dizer o que estou fazendo de errado,
Obrigado,
--
======================================================================
Alexandre dos Santos
Proteção Florestal
IFMT - Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso
Campus Cáceres
Caixa Postal 244
Avenida dos Ramires, s/n
Bairro: Distrito Industrial
Cáceres - MT CEP: 78.200-000
Fone: (+55) 65 8132-8112 (TIM) (+55) 65 9686-6970 (VIVO)
e-mails:alexandresantosbr em yahoo.com.br
alexandre.santos em cas.ifmt.edu.br
Lattes: http://lattes.cnpq.br/1360403201088680
======================================================================
Em 26/05/2014 15:12, Éder Comunello escreveu:
Alexandre, boa tarde!
Sugiro que você trabalhe com o mapa de bacias "dissolvidas" para o nível
2. Para isso você pode fazer uso de maptools::unionSpatialPolygons().
Para fins de visualização você pode ainda utilizar outras funções de
simplificação.
Feito isso, além de visualizar mais rápido, você poderá obter o
centróide dos polígonos dissolvidos pra locar os gráficos de torta.
Depois de rodar o sp::over() você precisa tabular as frequências por
bacia e adicionar a coordenada de cada uma.
A entrada do add.pie() é individual, então você poderá pensar num laço
ou uma função da família apply pra entradas múltiplas.
Atte.,
Éder Comunello <c
<mailto:comunello.eder em gmail.com>omunello.eder em gmail.com
<mailto:omunello.eder em gmail.com>>
Dourados, MS - [22 16.5'S, 54 49'W]
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20140529/f4be8c48/attachment.html>
Mais detalhes sobre a lista de discussão R-br