Tidyverse - ggplot2

Preparativos

Carga de paquetes

# Carga de dplyr
library(dplyr)

# Carga de ggplot2
library(ggplot2)

Conjuntos de datos utilizados

Datos hidrológicos
# Carga de datos desde un archivo CSV
rios <-
  read.csv(file = 'https://raw.githubusercontent.com/gf0604-procesamientodatosgeograficos/2021i-datos/main/hidrologia/fdc/FDC.csv')
Casos de COVID-19 en Costa Rica
# Carga de datos desde un archivo CSV
covid <-
  read.csv(file = 'https://raw.githubusercontent.com/gf0604-procesamientodatosgeograficos/2021i-datos/main/ministerio-salud/covid/ultimafecha_CSV_GENERAL.csv')

El paquete ggplot2

El paquete ggplot2 de Tidyverse es un sistema para la creación de gráficos de manera declarativa, basado en el libro Wilkinson, L. (2005). The Grammar of Graphics. En Wickham, H. (20210) A Layered Grammar of Graphics, puede encontrarse una versión resumida y enfocada en la implementación de ggplot2.

El programador proporciona los datos, indica como mapear las variables a elementos visuales (aesthetics), cuales geometrías utilizar y ggplot se encarga de los detalles. Por lo general, para construir un gráfico con ggplot2 se siguen los siguientes pasos:

Se puede generalizar el uso de ggplot2 mediante el siguiente formato:

ggplot(data = <DATOS>, aes(<MAPEOS>)) + 
  <GEOM_FUNCION>(<OPCIONES>)

Ejemplos de uso

Histogramas

Se generan con la función geom_histogram().

# Cambio de nombre de columna
rios <-
  rios %>%
  rename(pandora = Pandora.mm..637km2.)

# Histograma simple
ggplot(data = rios, aes(x = pandora)) +
  geom_histogram()
# Histograma con opciones
ggplot(data = rios, aes(x = pandora)) +
  geom_histogram(binwidth = 1,
                 color = "black",
                 fill = "white")

Gráficos de línea

Se generan con la función geom_line().

# Cambio de nombres de columnas y conversión de la columna de fecha
rios <-
  rios %>%
  rename(fecha = Tiempo,
         banano = Banano.mm..90km2.) %>%
  mutate(fecha = as.Date(fecha, format = "%m/%d/%Y"))

# Gráfico de líneas simple
ggplot(rios, aes(x = fecha, y = pandora)) +
  geom_line()

Corrections

If you see mistakes or want to suggest changes, please create an issue on the source repository.

Reuse

Text and figures are licensed under Creative Commons Attribution CC BY-SA 4.0. Source code is available at https://github.com/gf0604-procesamientodatosgeograficos/2021i-leccion-13/, unless otherwise noted. The figures that have been reused from other sources don't fall under this license and can be recognized by a note in their caption: "Figure from ...".