### Mapas tematicos ### lembrar de mudar diretorio de trabalho se necess?rio ### getwd() ### setwd() ### o mapa foi carregado do site do IBGE em ### + + ### + (clicar no disquete de 2007) ### Na nova janela ### Escolha E500, E100 ou E2500 ### Escolha uma proje??o .Usado: Proj_Geografica ### Escolha um formato. Usado: ArcView_shp ### Escolha um n?vel territorial. ### Escolha a unidade territorial. ### salve os arquivos. Pelo menos aqueles com extens?o .shp, .shx e .dbf ### carregando pacotes maptools e sp require(maptools) require(sp) ### lendo o mapa (disponivel em leg.ufpr.br/~paulojus/cnj/dados ) ac <- readShapePoly("dados/12mu500gc") ### visualizando plot(ac) ### atributos/elementos do objeto class(ac) slotNames(ac) names(attributes(ac)) ### bounding box bbox(ac) ac@bbox ### atributos dos municipios (variaveis) names(ac) dim(ac) dim(ac@data) head(ac@data) ac@data$NOME ac@data$NOME <- as.character(ac@data$NOME) Encoding(ac@data$NOME) <- "latin1" ac@data$NOME <- enc2native(ac@data$NOME) ac@data$NOME #### ### obtencao dos dados ### - no site do datasus http://www.datasus.gov.br ### - clicar em ### - clicar em ### - Clicar em Abastecimento de agua - 1991, 2000 ### - Selecione Brasil por Municipio ### - Montar a tabela assim: ### - Linha: Muncipio ### - Coluna: Abastecimento de Agua ### - Conteudo: Moradores ### - Clicar em Formato: e (no final da pg.) ### - Apos os dados serem mostrados, clicar em e salvar o arquivo ### A104241200_17_213_55.csv salvo a partir do site do DATASUS ### (disponivel em leg.ufpr.br/~paulojus/cnj/dados ) ### vendo arquivo de dados de abastecimento de agua #file.show("dados/A104241200_17_213_55.csv") ## o comando do acima do sistema operacional verifica encondings em diferentes sistemas! system("file -bi dados/A104241200_17_213_55.csv") ## importando dados agua <- read.csv2("dados/A104241200_17_213_55.csv", skip=3, enc="latin1") dim(agua) head(agua) names(agua) head(agua[,1]) ### E'necessario colocar dados na mesma ordem do mapa! ## Pode-se parear por ## * Nome do município ## * código do município ## Neste exemplo vamos usar o código ## note que o mapa e tabela possuem tamanhos diferentes ### extraindo o codigo de municipios dos dados codmund <- substr(as.character(agua[,1]), 1, 6) head(codmund) ### extraindo o código do mapa com apenas as 6 digitos iniciais head(ac@data) cod6map <- substr(as.character(ac@data[,1]), 1, 6) head(cod6map, 3) length(codmund) length(cod6map) ### selecionando os dados do ACRE ### e preservando a ordem do mapa odat <- merge(data.frame(cod=cod6map), data.frame(cod=codmund, agua[,-1]), sort=FALSE) dim(odat) names(odat) table(odat$cod==cod6map) ### verifica ordem ### adiciona os dados ao SpatialPolygons ac@data <- data.frame(ac@data, odat[,-1]) ### contruindo variável de interesse proporcao de rede geral names(ac@data) names(odat) ac@data$prg <- (odat[,2]+odat[,3])/odat[,10] ### visualiza no mapa spplot(ac, "prg") # mudando palheta de cores spplot(ac, "prg", col.regions=heat.colors(16)) ### criando 3 categorias cat3 <- findInterval(ac$prg, c(0, .12, .25, 1)) table(cat3) ### tr?s cores cores3 <- c("red", "orange", "yellow") ### plotando o mapa temático par(mar=c(0,0,0,0)) plot(ac, col=cores3[cat3]) legend("topright", leglabs(c(0,12,25,1), "<", ">"), fill=cores3, bty="n", cex=2) ## alguma análise ### carrega pacote spdep require(spdep) args(EBImoran.mc) nb <- poly2nb(ac) nb plot(ac) plot(nb, coordinates(ac), add=T) nbw <- nb2listw(nb) eb <- EBImoran.mc(odat[,10], odat[,2]+odat[,3], nbw, 999) eb ## HELP !!! help(EBImoran.mc) ## tipos: "text", "html", "postscript", "ps", "pdf".