Twitch du 13 décembre 2022
La vidéo n’est malheureusment plus disponible suite à une erreur de manipulation 😅
Code disponible sur GitHub
Réaliser un graphique nuage des points avec {ggplot2}
Important
Les graphiques avec le package {ggplot2} se réalise par couche.
Il y a donc une importance sur les couches pour ne pas masquer des éléments.
Masse de poussins
Utilisation du jeu de données ChickWeight présent de base dans R qui donne les poids de 50 poulets sur les 21 premiers jours de vie selon 4 régimes alimentaires.
Plus d’informations sur la page d’aide associée help(ChickWeight).
# appel du {tidyverse}library(tidyverse)# graphique de baseplot(ChickWeight)
# rien dessusggplot(data = ChickWeight)
# choix des dimension mais pas de représentationggplot(data = ChickWeight, mapping =aes(x = Time, y = weight))
# ajout de la couche points !ggplot(data = ChickWeight, mapping =aes(x = Time, y = weight)) +geom_point()
# amélioration du rendu du grpahiqueggplot(data = ChickWeight, mapping =aes(x = Time, y = weight)) +geom_point() +theme_classic()
# ajout de la couleur en fonction du poussinggplot(data = ChickWeight, mapping =aes(x = Time, y = weight, color = Chick)) +geom_point() +theme_classic()
# retirer la légende / erreur ordre des couches !ggplot(data = ChickWeight, mapping =aes(x = Time, y = weight, color = Chick)) +geom_point() +theme(legend.position ="none") +theme_classic()
# retirer la légende ok ggplot(data = ChickWeight, mapping =aes(x = Time, y = weight, color = Chick)) +geom_point() +theme_classic() +theme(legend.position ="none")
# forme des points en fonction du régimeggplot(data = ChickWeight, mapping =aes(x = Time, y = weight, color = Chick, shape = Diet)) +geom_point() +theme_classic() +theme(legend.position ="none")
# ajout de la légende seulement pour le type de régimeggplot(data = ChickWeight, mapping =aes(x = Time, y = weight, color = Chick, shape = Diet)) +geom_point() +theme_classic() +guides(color ="none")
# ajout de ligneggplot(data = ChickWeight, mapping =aes(x = Time, y = weight, color = Chick, shape = Diet)) +geom_point() +geom_line() +theme_classic() +guides(color ="none")
# si on retire la couleurggplot(data = ChickWeight, mapping =aes(x = Time, y = weight, shape = Diet)) +geom_point() +geom_line() +theme_classic() +guides(color ="none")
# ajout du groupeggplot(data = ChickWeight, mapping =aes(x = Time, y = weight, shape = Diet, groupe = Chick)) +geom_point() +geom_line() +theme_classic() +guides(color ="none")
# concentration sur le régimeggplot(data = ChickWeight, mapping =aes(x = Time, y = weight, color = Diet, groupe = Chick)) +geom_point() +geom_line() +theme_classic()
# changement de couleurggplot(data = ChickWeight, mapping =aes(x = Time, y = weight, color = Diet, groupe = Chick)) +geom_point() +geom_line() +scale_color_manual(values =c("gold", "blue", "red", "darkgreen")) +theme_classic()
# si on surpprime une modalité cela change les couleurs des suivantes donc mieux vaut utiliser un vecteurChickWeight %>%filter(Diet !=3) %>%ggplot(mapping =aes(x = Time, y = weight, color = Diet, groupe = Chick)) +geom_point() +geom_line() +scale_color_manual(values =c("gold", "blue", "red", "darkgreen")) +theme_classic()
# par vecteurcouleur <-c("1"="blue", "2"="darkgreen", "3"="gold", "4"="red")ggplot(data = ChickWeight, mapping =aes(x = Time, y = weight, color = Diet, groupe = Chick)) +geom_point() +geom_line() +scale_color_manual(values = couleur) +theme_classic()
# tendance par régimeggplot(data = ChickWeight, mapping =aes(x = Time, y = weight, color = Diet)) +geom_point() +geom_smooth() +scale_color_manual(values = couleur) +theme_classic()
# régression linéaireggplot(data = ChickWeight, mapping =aes(x = Time, y = weight, color = Diet)) +geom_point() +geom_smooth(method ="lm", se =FALSE) +scale_color_manual(values = couleur) +theme_classic()
# attenuer les pointsggplot(data = ChickWeight, mapping =aes(x = Time, y = weight, color = Diet)) +geom_point(alpha =0.3) +geom_smooth(method ="lm", se =FALSE) +scale_color_manual(values = couleur) +theme_classic()
Différence entre histogramme et diagramme en barres
Définitions
Histogramme : Graphique permettant de représenter la distribution des données d’une variable quantitative. Diagramme en barres : Graphique représentant la distribution des modalités d’une variable qualitative.
Exemples
# histogramme du poidsChickWeight %>%ggplot() +aes(x = weight) +geom_histogram() +theme_bw()
# changement du nombre d'intervallesChickWeight %>%ggplot() +aes(x = weight) +geom_histogram(bins =10) +theme_bw()
# changement de la taille de l'intervalleChickWeight %>%ggplot() +aes(x = weight) +geom_histogram(binwidth =10) +theme_bw()
# ajout du régimeChickWeight %>%ggplot() +aes(x = weight, fill = Diet) +geom_histogram(binwidth =10) +theme_bw()
#séparation des barresChickWeight %>%ggplot() +aes(x = weight, fill = Diet) +geom_histogram(binwidth =10, position ="dodge") +theme_bw()
# diagramme en barres sur le poids ChickWeight %>%ggplot() +aes(x = weight) +geom_bar() +theme_light()
# diagramme en barres sur les régimesChickWeight %>%ggplot() +aes(x = Diet) +geom_bar() +theme_light()
# 100 ligne de plus pour le régime 1ChickWeight %>%count(Diet)
# boîte à moustache simpleggplot(ChickWeight) +aes(x = weight) +geom_boxplot() +theme_classic()
# ajout du régimeggplot(ChickWeight) +aes(x = weight, y = Diet) +geom_boxplot() +theme_classic()
# ajout de couleur du régimeggplot(ChickWeight) +aes(weight, y = Diet, color = Diet) +geom_boxplot() +scale_color_manual(values = couleur) +theme_classic()
# ajout des pointsggplot(ChickWeight) +aes(weight, y = Diet, color = Diet) +geom_point() +geom_boxplot() +scale_color_manual(values = couleur) +theme_classic()
# montrer l'importance des couchesggplot(ChickWeight) +aes(weight, y = Diet, color = Diet) +geom_boxplot() +geom_point() +scale_color_manual(values = couleur) +theme_classic()
# ajout de la transparance pour les pointsggplot(ChickWeight) +aes(weight, y = Diet, color = Diet) +geom_boxplot() +geom_point(alpha =0.3) +scale_color_manual(values = couleur) +theme_classic()
# utilisation de la dispersion des pointsggplot(ChickWeight) +aes(weight, y = Diet, color = Diet) +geom_boxplot() +geom_jitter(alpha =0.3) +scale_color_manual(values = couleur) +theme_classic()
# poids = var réponseggplot(ChickWeight) +aes(y = weight, x = Diet, color = Diet) +geom_boxplot() +geom_jitter(alpha =0.3) +scale_color_manual(values = couleur) +theme_classic()
Graphique combiné
Très proche du graphique présenté précédemment avec plot
# charger le package {GGally}library(GGally)# création du graphiqueggpairs(ChickWeight, columns =1:2, aes(color=Diet))
# ajout de la couleur choisiggpairs(ChickWeight, columns =1:2, aes(color=Diet)) +scale_color_manual(values = couleur)
# idem mais pour les courbesggpairs(ChickWeight, columns =1:2, aes(color=Diet)) +scale_color_manual(values = couleur) +scale_fill_manual(values = couleur)