mexico - ¿Cómo crear un mapa del mundo en R con países específicos rellenados?
mapa de mexico en r (3)
Me gustaría usar R para generar un mapa del mundo muy básico con un conjunto específico de países con un color rojo para indicar que son países endémicos de malaria.
Tengo una lista de estos países en un marco de datos, pero estoy luchando por superponerlos en un mapa del mundo.
He intentado usar el objeto wrld_simpl
y también el método joinCountryData2Map
en el paquete rworldmap
.
Me gustaría comentar esta respuesta para evitar la adición de una pregunta posiblemente redundante, pero no tengo suficiente reputación en este momento, disculpas por esto.
https://stackoverflow.com/a/9102797/1470099
Estoy teniendo dificultades para entender los argumentos dados al comando plot()
. Me pregunté si había una manera fácil de decirle a R que trazara todos los NAME del país en mi lista en el mapa wrld_simpl
en lugar de usar grepl()
etc. etc. .
plot(wrld_simpl,
col = c(gray(.80), "red")[grepl("^U", wrld_simpl@data$NAME) + 1])
Intente usar el paquete googleVis y use las funciones gvisGeoMap
p.ej
G1 <- gvisGeoMap(Exports,locationvar=''Country'',numvar=''Profit'',options=list(dataMode=''regions''))
plot(G1)
Usando el paquete rworldmap
, podrías usar lo siguiente:
library(rworldmap)
theCountries <- c("DEU", "COD", "BFA")
# These are the ISO3 names of the countries you''d like to plot in red
malDF <- data.frame(country = c("DEU", "COD", "BFA"),
malaria = c(1, 1, 1))
# malDF is a data.frame with the ISO3 country names plus a variable to
# merge to the map data
malMap <- joinCountryData2Map(malDF, joinCode = "ISO3",
nameJoinColumn = "country")
# This will join your malDF data.frame to the country map data
mapCountryData(malMap, nameColumnToPlot="malaria", catMethod = "categorical",
missingCountryCol = gray(.8))
# And this will plot it, with the trick that the color palette''s first
# color is red
EDITAR: Añadir otros colores e incluir imagen
## Create multiple color codes, with Burkina Faso in its own group
malDF <- data.frame(country = c("DEU", "COD", "BFA"),
malaria = c(1, 1, 2))
## Re-merge
malMap <- joinCountryData2Map(malDF, joinCode = "ISO3",
nameJoinColumn = "country")
## Specify the colourPalette argument
mapCountryData(malMap, nameColumnToPlot="malaria", catMethod = "categorical",
missingCountryCol = gray(.8), colourPalette = c("red", "blue"))