
Mensagem abaixo em nome da Julianna... (dados disponiveis via datafilehost) ==== E quando fui conferir os breaks, os intervalos estavam certos,mas o mapa resultante estava errado. Porque quando eu não importo o csv e uso o dataframe resultante da função, os breaks ficam ok(da maneira que eu especifico em FixedBreaks) e, do contrario, não??? segue o código: ####################################################### # CONSTRUINDO MAPAS ####################################################### ##Code (Comments are preceded by ##) ## Load required packages # Limpando memoria. rm(list=ls(all=TRUE)) library(maps) library(sp) library(maptools) library(spdep) library(classInt) library(RColorBrewer) library(shape) library(SDMTools) library(latticeExtra) library(ReadImages) library(png) rosa_dos_ventos = function(loc=c(-34.5, -8), size = 0.15, bearing=0, cols=1, cex=0.6,...) { cols <- rep(c("white","black"),8) radii <- rep(size/c(1,4,2,4),4) x <- radii[(0:15)+1]*cos((0:15)*pi/8+bearing)+loc[1] y <- radii[(0:15)+1]*sin((0:15)*pi/8+bearing)+loc[2] for (i in 1:15) { x1 <- c(x[i],x[i+1],loc[1]) y1 <- c(y[i],y[i+1],loc[2]) polygon(x1,y1,col=cols[i]) } polygon(c(x[16],x[1],loc[1]),c(y[16],y[1],loc[2]),col=cols[16]) b <- c("O","S","L","N") for (i in 0:3) text((size+par("cxy")[1]-0.40)*cos(bearing+i*pi/2)+loc[1], (size+par("cxy")[2]-0.42)*sin(bearing+i*pi/2)+loc[2],b[i+1],cex=cex) } ## Lendo dados ## http://www.datafilehost.com/download-e5cb7e86.html dados = read.table("dadosJulianna.csv", sep = ",", header = TRUE) # Lendo mapa. mapa = readShapePoly("c:/users/Julianna/Documents/SecSaude/saudemapa.shp") proj4string(mapa) <- CRS("+init=epsg:4291") scaleXY(mapa, 1836656) # arquivo png #img <- readPNG("c:/users/Julianna/Documents/SecSaude/logo_pb.png") # seu arquivo png aqui #set.seed(123) #par(xpd = TRUE) colors <- brewer.pal(7, "Reds") brks <- classIntervals(dados$ano_2006, n = 7,style="fixed", intervalClosure="right", fixedBreaks=c(-2, -0.5, 0, 20, 40, 60, 80, 10000), main="Fixed") brks<- brks$brks ID = match(substr(mapa$CODIGO,1,6),dados$t_indicadores_municipio.f_municipio) dados = dados[ID,] png(filename="c:/mif2006.png", height=750, width=1500) plot(mapa, col = colors[findInterval(dados$ano_2006, brks,all.inside=TRUE)], axes = TRUE, cex = 1.5, mar=5) ##, xlim=c(-39.7, -34.7), ylim=c(-8.5, -6) ##invisible(text(getSpPPolygonsLabptSlots(mapa), labels=as.character(mapa$NOMEMUN_1), cex=0.65)) title(main = "PORCENTAGEM DE à BITOS INVESTIGADOS\ntipo: mulheres em idade fértil", font.main = 2, cex.main = 1.8) text(-35.7, -6.2, "ANO: 2006", cex = 1.8) legend(-39.6,-7.6, c("Sem informação", "0", "]0,20]", "]20,40]", "]40,60]", "]60,80]","Acima de 80"), fill = colors, bty="n", x.intersp = 1.1, y.intersp = 1.1, cex = 1.6) rosa_dos_ventos(loc=c(-34.5,-8),size=0.17,cex=1.20, bearing=0, cols=1) SpatialPolygonsRescale(layout.scale.bar(), offset = c(-35,-8.30), scale = 1, fill = c("transparent", "black"), plot.grid= FALSE) text(-34.5, -8.35, "110.3 KM", cex= 1.3) #rasterImage(img, xleft = -39.5, ybottom = -6.25, xright = -38.9 , ytop = -6) dev.off()