¿Cómo hacer un mapa mundial con ggplot2 en R?

En este artículo, discutiremos cómo crear un mapa mundial y trazar datos en él utilizando el lenguaje de programación R.

Para crear un mapa del mundo usándolo usaremos la función geom_map() del paquete ggplot2 del lenguaje R. Esta función devuelve un objeto ggplot, por lo que todas las funciones que funcionan en otros gráficos ggplot también funcionarán en geom_map(). 

Sintaxis:

ggplot() + geom_map(datos, mapa, aes())

dónde,

  • datos: determina los datos que se mostrarán en esta capa.
  • mapa: determina el marco de datos que contiene las coordenadas del mapa
  • aes(): determina la estética que es la variable del sistema de coordenadas y otros aspectos estéticos.

Ejemplo:

Aquí, hay un gráfico de mapa mundial básico hecho usando la función geom_map(). El marco de datos para las coordenadas del mapa se toma usando la función map_data(). Esto crea un mapa mundial como un objeto ggplot que se puede formatear, modificar y trazar como una capa como cualquier otro gráfico ggplot2.

R

# load library tidyverse
library(tidyverse)
  
# create data for world coordinates using 
# map_data() function
world_coordinates <- map_data("world")
  
# create world map using ggplot() function
ggplot() +
  
# geom_map() function takes world coordinates 
# as input to plot world map
  geom_map(
    data = world_coordinates, map = world_coordinates,
    aes(long, lat, map_id = region)
  )

Producción:

Este es un mapa básico con el esquema de color predeterminado de los diagramas del paquete ggplot2.

Personalización de color

Podemos personalizar la apariencia visual de la trama usando el parámetro de color, relleno y tamaño de la función geom_map().

Sintaxis:

 ggplot() + geom_map(datos, mapa, aes(), tamaño, color, relleno)

dónde,

  • tamaño: determina el grosor del borde del mapa
  • color: determina el color del borde del mapa
  • relleno: determina el color del fondo de relleno del mapa

Ejemplo:

Aquí hay un mapa del mundo con relleno verde y un borde blanco grueso creado con la propiedad de relleno, color y tamaño de la función geom_map(). Esto hace que el mapa sea más atractivo visualmente y nos ayuda a diferenciar los diferentes países debido al contraste de los límites blancos.

R

# load library tidyverse
library(tidyverse)
  
# create data for world coordinates using 
# map_data() function
world_coordinates <- map_data("world")
  
# create world map using ggplot() function
ggplot() +
  
# geom_map() function takes world coordinates as input 
# to plot world map color parameter determines the 
# color of borders in map fill parameter determines 
# the color of fill in map size determines the thickness
# of border in map
  geom_map(
    data = world_coordinates, map = world_coordinates,
    aes(long, lat, map_id = region)
    color = "white", fill = "darkgreen", size = 0.2
  )

Producción:

Trazado de datos sobre el mapa mundial

Dado que la función geom_map() devuelve el objeto ggplot(), podemos trazar datos sobre él como en cualquier otro gráfico ggplot. Para hacerlo, solo necesitamos datos de latitud y longitud en nuestro conjunto de datos para trazar los datos en el mapa. Podemos trazar un diagrama de líneas, un diagrama de dispersión, un diagrama de caja o cualquier otro diagrama deseado sobre el diagrama del mapa mundial usando la función ggplot2 deseada.

Sintaxis:

ggplot()+ geom_map()+ geom_plot()

dónde,

  • geom_plot(): determina cualquier función de trazado del paquete ggplot2

Ejemplo:

En este ejemplo, hemos trazado un conjunto de datos de erupción volcánica sobre la función geom_map() usando la función geom_point(). Aquí podemos mostrar la variación de la intensidad de las erupciones volcánicas en todo el mundo. esto nos ayuda a comprender la zona crítica para la erupción volcánica.

Conjunto de datos utilizado: volcán

R

# load library tidyverse
library(tidyverse)
  
# create data for world coordinates using map_data() function
world_coordinates <- map_data("world")
  
# read volcano_eruption data from volcano.csv
volcano_eruption <- readr::read_csv("volcano.csv")
  
# create world map using ggplot() function
ggplot() +
# geom_map() funct
ion takes world coordinates as input
# to plot world map color parameter determines the
# color of borders in map fill parameter determines the
# color of fill in map size determines the thickness of
# border in map
  geom_map(
    data = world, map = world,
    aes(long, lat, map_id = region),
    color = "green", fill= "lightyellow"
  )+
# geom_point function is used to plot scatter plot on top 
# of world map
geom_point(
    data = volcano_eruption,
    aes(longitude, latitude, color = primary_volcano_type,
        size=population_within_10_km),
    alpha = 1
  ) +
  
# legend.position as none removes the legend
theme(legend.position="none")

Producción:

Publicación traducida automáticamente

Artículo escrito por mishrapriyank17 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *