rm(list=ls())
graphics.off()
windows(record=TRUE)

library(maptools)
## Loading required package: sp
## Checking rgeos availability: TRUE
library(spdep)
## Loading required package: Matrix
precisa.baixar = !('brasilmun2010_new.shp' %in% dir())

if (precisa.baixar) {
  download.file('http://ufrn.schmert.net/dados/brasilmun2010_new.shp',
                 destfile='brasilmun2010_new.shp',mode='wb')
  download.file('http://ufrn.schmert.net/dados/brasilmun2010_new.shx',
                destfile='brasilmun2010_new.shx',mode='wb')
  download.file('http://ufrn.schmert.net/dados/brasilmun2010_new.dbf',
                destfile='brasilmun2010_new.dbf',mode='wb')
}

mapa = readShapePoly('brasilmun2010_new')

str( mapa, 2)
## Formal class 'SpatialPolygonsDataFrame' [package "sp"] with 5 slots
##   ..@ data       :'data.frame':  5564 obs. of  79 variables:
##   .. ..- attr(*, "data_types")= chr [1:79] "C" "C" "C" "C" ...
##   ..@ polygons   :List of 5564
##   .. .. [list output truncated]
##   ..@ plotOrder  : int [1:5564] 159 82 126 234 131 270 80 158 108 109 ...
##   ..@ bbox       : num [1:2, 1:2] -73.99 -33.75 -34.79 5.27
##   .. ..- attr(*, "dimnames")=List of 2
##   ..@ proj4string:Formal class 'CRS' [package "sp"] with 1 slot
head(mapa@data)
##       ID_                NAME1_   NAME2_ FILLER1 FILLER2 FILLER3 FILLER4
## 0 1100015 Alta Floresta D'Oeste RONDONIA     110     110     110     110
## 1 1100023             Ariquemes RONDONIA     110     110     110     110
## 2 1100031                Cabixi RONDONIA     110     110     110     110
## 3 1100049                Cacoal RONDONIA     110     110     110     110
## 4 1100056            Cerejeiras RONDONIA     110     110     110     110
## 5 1100064     Colorado do Oeste RONDONIA     110     110     110     110
##   FILLER5 FILLER6   V01   V02   V03   V04   V05  V06   V07   V08  V09 V10
## 0     110     110 24392 13970 10422 12656  6970 5686 11736  7000 4736 193
## 1     110     110 90353 76525 13828 45543 38030 7513 44810 38495 6315 720
## 2     110     110  6313  2693  3620  3266  1339 1927  3047  1354 1693  43
## 3     110     110 78574 61921 16653 39124 30307 8817 39450 31614 7836 613
## 4     110     110 17029 14419  2610  8551  7152 1399  8478  7267 1211 127
## 5     110     110 18591 13657  4934  9330  6715 2615  9261  6942 2319 142
##    V11  V12  V13  V14  V15  V16  V17  V18  V19  V20  V21  V22  V23 V24 V25
## 0  763 1073 1256 1362 1105 1053  951  878  913  846  631  489  351 301 239
## 1 2925 4177 4740 4479 4456 4161 3755 3431 3291 2613 2070 1515 1110 788 607
## 2  197  253  313  317  226  250  237  242  247  213  206  163  118  99  69
## 3 2345 3203 3756 3976 3796 3450 3170 2938 2815 2436 1935 1436 1081 746 612
## 4  499  700  841  875  765  681  639  587  639  581  423  325  266 223 178
## 5  559  719  840  904  803  777  751  650  654  597  489  378  353 255 195
##   V26 V27 V28 V29 V30   V31 V32  V33  V34  V35  V36  V37  V38  V39  V40
## 0 154  67  25   4   2 1e+14 176  776 1034 1145 1226 1095 1039  916  917
## 1 374 202  90  31   4 4e+00 755 2870 4109 4516 4562 4525 4297 3913 3513
## 2  43  23   4   2   1 1e+14  51  215  254  291  278  222  272  225  215
## 3 385 254 124  41  12 1e+14 550 2301 3072 3717 3883 3962 3568 3447 3129
## 4 110  64  22   5   1 1e+14 114  495  657  794  844  795  729  682  662
## 5 138  67  38  17   4 1e+14 113  542  702  828  883  836  851  730  717
##    V41  V42  V43  V44  V45 V46 V47 V48 V49 V50 V51 V52   V53   V54   V55
## 0  802  720  515  431  311 264 177 119  40  22   9   2 1e+14  8711  8686
## 1 3125 2429 1828 1484 1041 735 497 317 187  64  34   7 2e+00 30943 30904
## 2  220  202  173  142   94  65  68  34  16   6   2   1 1e+00  2333  2333
## 3 2832 2396 1945 1427 1008 795 607 431 228 114  31   7 1e+14 27970 27938
## 4  629  548  406  311  301 196 134  97  50  21   9   3 1e+00  6025  6015
## 5  603  573  482  428  290 251 217 102  69  24  17   3 1e+14  6806  6800
##     V56   V57 V58  V59   V60 V61  V62     V63     V64     V65 V66    V67
## 0  7336  7275  61 1350 1e+14 358  992 2.5e+01 8.0e+00 1.7e+01 331 706704
## 1 27240 26537 703 3664 1e+14 679 2985 3.9e+01 1.6e+01 2.3e+01 330 442658
## 2  1979  1976   3  354 1e+14 159  195 1.0e+14 1.0e+14 1.0e+14 319 131436
## 3 24245 24041 204 3693 1e+14 916 2777 3.2e+01 1.4e+01 1.8e+01 323 379281
## 4  5364  5361   3  651 1e+14 172  479 1.0e+01 9.0e+00 1.0e+00 316 278330
## 5  5963  5945  18  837 1e+14 246  591 6.0e+00 4.0e+00 2.0e+00 311 145106
##    V68 REGIAO STATE
## 0  345      1   110
## 1 2041      1   110
## 2  480      1   110
## 3 2072      1   110
## 4  612      1   110
## 5 1281      1   110
##########  mapa do Brasil com RN acrescentado
plot(mapa, col='gold', border='NA')

# indices para os polígonos corr. ao RN
RN = which( mapa@data$NAME2_ == 'RIO GRANDE DO NORTE')

plot(mapa[RN,], col='darkgreen', border=NA, main="Munic. do RN", add=TRUE)

##########  mapa do RN 
plot(mapa[RN,], col='darkgreen', border='white', main="Munic. do RN")

########## série de mapas, um para cada município do RN

for (i in RN) {
  plot(mapa[RN,], col='gold', border='white')
  plot(mapa[i,], col='darkgreen', border='NA', add=TRUE)
  title(mapa@data$NAME1_[i])
}