Personnaliser les préférences

Nous utilisons des cookies pour vous aider à naviguer efficacement et à exécuter certaines fonctions. Vous trouverez ci-dessous des informations détaillées sur tous les cookies sous chaque catégorie de consentement.

Les cookies classés comme « Nécessaires » sont stockés sur votre navigateur car ils sont essentiels pour activer les fonctionnalités de base du site.... 

Toujours actif

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

Aucun cookie à afficher.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

Aucun cookie à afficher.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

Aucun cookie à afficher.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

Aucun cookie à afficher.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

Aucun cookie à afficher.

Comment créer des histogrammes par groupe dans ggplot2 (avec exemple)



Vous pouvez utiliser la syntaxe de base suivante pour créer un histogramme par groupe dans ggplot2 :

ggplot(df, aes(x=values_var, fill=group_var)) +
  geom_histogram(color='black', alpha=0.4, position='identity') +
  scale_fill_manual(values=c('red', 'blue', 'purple'))

Cet exemple particulier crée un tracé avec trois histogrammes superposés rouge, bleu et violet.

L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.

Exemple : créer un histogramme par groupe dans ggplot2

Supposons que nous ayons le bloc de données suivant dans R qui contient des informations sur les points marqués par les basketteurs de trois équipes différentes :

#make this example reproducible
set.seed(1)

#create data frame
df <- data.frame(team=rep(c('A', 'B', 'C'), each=100),
                 points=c(rnorm(100, mean=10),
                          rnorm(100, mean=15),
                          rnorm(100, mean=20)))

#view head of data frame
head(df)

  team    points
1    A  9.373546
2    A 10.183643
3    A  9.164371
4    A 11.595281
5    A 10.329508
6    A  9.179532

Nous pouvons utiliser le code suivant pour créer des histogrammes qui affichent la répartition des points marqués par chacune des trois équipes :

library(ggplot2)

#create histogram by team
ggplot(df, aes(x=points, fill=team)) +
  geom_histogram(color='black', alpha=0.4, position='identity') +
  scale_fill_manual(values=c('red', 'blue', 'purple'))

Les trois histogrammes représentent la répartition des points marqués par les joueurs de chaque équipe.

La légende sur le côté droit du tracé montre quelle couleur correspond à chaque équipe.

Notez que l’argument color spécifie la couleur du contour des barres dans chaque histogramme et l’argument alpha spécifie la transparence (entre 0 et 1) à utiliser pour les barres.

En définissant la valeur d’ alpha sur une valeur inférieure à 1, nous pouvons voir les barres qui se chevauchent entre les histogrammes.

N’hésitez pas à utiliser la fonction labs() pour modifier les étiquettes dans le tracé et choisissez un thème ggplot2 qui correspond à votre style :

library(ggplot2)

#create histogram by team
ggplot(df, aes(x=points, fill=team)) +
  geom_histogram(color='black', alpha=0.4, position='identity') +
  scale_fill_manual(values=c('red', 'blue', 'purple')) +
  labs(fill='Team', x='Points Scored', y='Count', title='Points Scored by Team') +
  theme_classic()

histogramme ggplot2 par groupe

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans R :

Comment créer un histogramme de fréquence relative dans R
Comment tracer plusieurs boîtes à moustaches dans un seul graphique dans R
Comment tracer plusieurs lignes dans un graphique dans R

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *