Comment créer un graphique à bulles dans R
Un graphique à bulles est un type de graphique qui vous permet de visualiser simultanément trois variables dans un ensemble de données.
Les deux premières variables sont utilisées comme coordonnées (x, y) sur un nuage de points et la troisième variable est utilisée pour représenter la taille.
Vous pouvez utiliser la syntaxe de base suivante pour créer un graphique à bulles dans R :
library(ggplot2) #create bubble chart ggplot(df, aes(x=x_var, y=y_var, size=size_var)) + geom_point(alpha=0.5) + scale_size(range=c(2, 10), name='Legend Name')
L’exemple suivant montre comment utiliser cette syntaxe pour créer un graphique à bulles dans la pratique.
Remarque : L’argument alpha précise que les cercles du graphique doivent être partiellement transparents. L’argument plage vous permet de définir les valeurs de rayon minimum et maximum pour les cercles du graphique.
Exemple : créer un graphique à bulles dans R
Supposons que nous ayons le bloc de données suivant dans R qui contient des informations sur divers joueurs de basket-ball :
#create data frame df <- data.frame(team=c('A', 'A', 'A', 'B', 'B', 'B', 'C', 'C', 'C'), points=c(8, 11, 13, 13, 15, 18, 22, 27, 32), assists=c(4, 3, 6, 5, 4, 7, 8, 11, 6), minutes=c(9, 12, 15, 20, 36, 30, 31, 40, 43)) #view data frame df team points assists minutes 1 A 8 4 9 2 A 11 3 12 3 A 13 6 15 4 B 13 5 20 5 B 15 4 36 6 B 18 7 30 7 C 22 8 31 8 C 27 11 40 9 C 32 6 43
Nous pouvons utiliser la syntaxe suivante pour créer un graphique à bulles qui affiche les aides sur l’axe des x, les points sur l’axe des y et utilise les minutes pour déterminer la taille des cercles :
library(ggplot2) #create bubble chart ggplot(df, aes(x=assists, y=points, size=minutes)) + geom_point(alpha=0.5) + scale_size(range=c(2, 10), name='Minutes Played')
Vous pouvez changer la couleur de tous les cercles en utilisant l’argument color dans la fonction geom_point() :
library(ggplot2) #create bubble chart with blue circles ggplot(df, aes(x=assists, y=points, size=minutes)) + geom_point(alpha=0.5, color='steelblue') + scale_size(range=c(2, 10), name='Minutes Played')
Alternativement, vous pouvez utiliser l’argument color dans aes() pour définir la couleur de chaque cercle en fonction de la valeur d’une autre variable dans le bloc de données :
library(ggplot2) #create bubble chart and color circles based on value of team variable ggplot(df, aes(x=assists, y=points, size=minutes, color=team)) + geom_point(alpha=0.5) + scale_size(range=c(2, 10), name='Minutes Played')
La couleur de chaque cercle du tracé dépend désormais de la valeur de la variable d’équipe .
Remarque : N’hésitez pas à jouer avec les valeurs minimales et maximales dans l’argument range pour augmenter ou diminuer la taille des cercles dans le tracé.
Ressources additionnelles
Les didacticiels suivants expliquent comment créer d’autres graphiques courants dans R :
Comment créer un graphique de Pareto dans R
Comment tracer plusieurs lignes dans un graphique dans R
Comment tracer plusieurs boîtes à moustaches dans un seul graphique dans R