Un super rebondissement ggplot

Programmer avec dplyr

Dr. Chester Ismay

Educator, Data Scientist, and R/Python Consultant

Notions de base de ggplot2

library(ggplot2)
ggplot(
    world_bank_data, 
    aes(x = infant_mortality_rate)
) +

geom_histogram(color = "white")

Histogramme de infant_mortality_rate

Programmer avec dplyr

Ajouter un titre

ggplot(
    world_bank_data, 
    aes(x = infant_mortality_rate)
) + 
  geom_histogram(color = "white") +

ggtitle("Un histogramme de infant_mortality_rate")

ggplot2 avec titre

Programmer avec dplyr

Emballer dans une fonction

# Code du graphique précédent
ggplot(world_bank_data, aes(x = infant_mortality_rate)) + 
  geom_histogram(color = "white") +
  ggtitle("Un histogramme de infant_mortality_rate")
# Définir une fonction
my_histogram <- function(

df, x_var) {
ggplot(df, aes(x = x_var)) + geom_histogram(color = "white") + ggtitle(paste("Un histogramme de", x_var)) }
Programmer avec dplyr

Améliorer notre fonction

# Première tentative de fonction
my_histogram <- function(df, x_var) {
  ggplot(df, aes(x = x_var)) +
    geom_histogram(color = "white") +
    ggtitle(paste("Un histogramme de", x_var))
}

# Appeler la fonction my_histogram(df = world_bank_data, x_var = infant_mortality_rate)
 Error in paste("A histogram of", x_var) : 
  object 'infant_mortality_rate' not found
Programmer avec dplyr

Ajouter rlang

# Première tentative de fonction
my_histogram <- function(df, x_var) {
  ggplot(df, aes(x = x_var)) +
    geom_histogram(color = "white") +
    ggtitle(paste("Un histogramme de", x_var))
}
# Ajustements nécessaires pour éviter l'erreur
my_histogram <- function(df, x_var) {
  ggplot(df, aes(x = {{ x_var }})) +

geom_histogram(color = "white") + ggtitle(paste("Un histogramme de",
as_label(enquo(x_var))) }
Programmer avec dplyr

Utiliser notre fonction

# Fonction avec opérateurs rlang
my_histogram <- function(df, x_var) {
  ggplot(df, aes(x = {{ x_var }})) +
    geom_histogram(color = "white") +
    ggtitle(paste(
      "Un histogramme de", 
      as_label(enquo(x_var))
    ))
}

# Appeler la fonction avec l'opérateur pipe ! world_bank_data %>% my_histogram(x_var = perc_rural_pop)

ggplot2 avec histogramme rlang

Programmer avec dplyr

Passons à la pratique !

Programmer avec dplyr

Preparing Video For Download...