[R-br] Plotar dados em mapa - problema com NA
João Augusto P Batista
joao.augustopb em gmail.com
Quarta Setembro 4 11:07:35 BRT 2013
Olá a todos!
Estou tentando plotar um mapa com dados da exportação do Brasil em determinado ano. O mapa é do GISMAPS, e os dados foram obtidos através do WITS.
Já arrumei os dados, e estou conseguindo plotar o mapa quase que corretamente.
Minha única dificuldade é em como plotar os dados NA. Eu quero que o Brasil assuma um cor diferente dos demais (azul, por exemplo), e que os países sem dados (NA) estejam em cinza. Abaixo segue o código da parte de plotagem e um excerto dos dados.
colors <-brewer.pal(9, "YlOrRd")
#Agrega os dados para a exportação por país
wits.aggregate <- aggregate(TradeValue.in.1000.USD~PartnerISO3+PartnerName+Year+TradeFlowName,
data=wits[which(wits$TradeFlowName=="Export"),], FUN=sum)
#Coloca em milhões
wits.aggregate$ValueMi <- wits.aggregate$TradeValue.in.1000.USD/1000
#o mapa é copiado - ele é utilizado várias vezes
wld.aux <- wld
wld.data.aux <- attr(wld.aux, "data")
wld.data.aux$index <- 1:dim(wld.data.aux)[1]
wld.data.aux <- merge(wld.data.aux, wits.aggregate, by.x="ISO_3DIGIT", by.y="PartnerISO3", all=T, na.action=na.pass)
wld.data.aux <- wld.data.aux[order(wld.data.aux$index), ]
wld.data <- wld.data.aux[which(wld.data.aux$Year==2002),]
brks <- classIntervals(wld.data$ValueMi, n=9, style="quantile")
brks <- brks$brks
attr(wld.aux, "data") <- wld.data
plot(wld.aux, col=colors[findInterval(wld.aux$ValueMi, brks, all.inside=T)], axes=F, bg=NA, mai=c(0,2,2,20))
#início do wld.data:
row.names ISO_3DIGIT FIPS_CNTRY GMI_CNTRY ISO_2DIGIT CNTRY_NAME LONG_NAME SOVEREIGN POP_CNTRY CURR_TYPE CURR_CODE LANDLOCKED SQKM SQMI COLOR_MAP index PartnerName Year TradeFlowName TradeValue.in.1000.USD ValueMi
1 1 ABW AA ABW AW Aruba Aruba Netherlands 67074 Euro EUR N 200.35 77.35 1 205 Aruba 2002 Export 10102.756 10.102756
2 3 AFG AF AFG AF Afghanistan Afghanistan Afghanistan 17250390 Afghani AFA Y 642115.94 247920.95 3 45 Afghanistan 2002 Export 24.428 0.024428
3 5 AGO AO AGO AO Angola Angola Angola 11527260 New Kwanza AON N 1252160.88 483459.38 1 115 Angola 2002 Export 398796.168 398.796168
4 7 AIA AV AIA AI Anguilla Anguilla United Kingdom 9208 EC Dollar XCD N 91.57 35.36 6 189 Anguila 2002 Export 126.898 0.126898
5 10 ALB AL ALB AL Albania Albania Albania 3416945 Lek ALL N 28615.98 11048.63 6 40 Albania 2002 Export 9685.900 9.685900
6 12 AND AN AND AD Andorra Andorra Andorra 55335 Euro EUR Y 506.31 195.49 8 32 Andorra 2002 Export 18.070 0.018070
7 15 ARG AR ARG AR Argentina Argentina Argentina 33796870 Peso ARP N 2781207.00 1073824.00 8 124 Argentina 2002 Export 4681092.144 4681.092144
8 17 ARM AM ARM AM Armenia Armenia Armenia 3377228 Dram AMD Y 29636.09 11442.49 7 37 Armenia 2002 Export 4857.284 4.857284
9 19 ASM AQ ASM AS American Samoa American Samoa United States 53000 US Dollar USD N 164.37 63.46 2 226 American Samoa 2002 Export 10.700 0.010700
10 21 ATG AC ATG AG Antigua & Barbuda Antigua and Barbuda Antigua & Barbuda 65212 EC Dollar XCD N 538.66 207.98 2 193 Antigua and Barbuda 2002 Export 1796.010 1.796010
Fico à disposição para fornecer os dados (só indiquem a melhor maneira de fazê-lo!)
Abraços e muito obrigado desde já,
João Augusto
Analista de Negócios
Cortex-Intelligence
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20130904/dffb2d74/attachment-0001.html>
Mais detalhes sobre a lista de discussão R-br