Ordinateurs

À partir de ggplot2 dans R

Harsh est un DBA SQL ayant une expérience de plus de 13 ans. Il a travaillé sur la plupart des technologies liées à SQL Server. Il aime la politique, la lecture

Utilisation de ggplot2

Paquet ggplot2

Présentation du paquet ggplot2

L’un des aspects les plus importants de l’analyse de données est la visualisation des données. La visualisation est probablement l’aspect le plus puissant qui vous permet de visualiser vos données sous différents angles. Cela vous permet également de présenter vos conclusions de manière très puissante. Une image vaut mille mots.

R a des milliers de packages différents qui peuvent effectuer une variété de tâches. ggplot2 est l’un de ces packages conçu pour créer et afficher des tracés.

Donc, dans cet article, je vais montrer comment nous pouvons construire un tracé en utilisant ggplot2 dans R à partir de zéro. Je vais commencer avec un tracé vierge, puis y ajouter des éléments pour créer des tracés de base.

Notez que le package est nommé ggplot2.

La fonction réelle que nous utiliserons pour créer des tracés s’appelle ggplot.

Cela peut prêter à confusion, mais je crains que ce soit ainsi qu’ils soient nommés.

Le package est donc ggplot2 et la fonction que nous utilisons à partir de ce package s’appelle ggplot.

droit.

Objectif

L’objectif de cet article n’est pas de construire une intrigue fantaisiste et étonnante. L’objectif est d’initier le lecteur au processus de construction d’une intrigue petit à petit à partir de zéro.

À l’aide de cet article, vous devriez être en mesure de comprendre les différents éléments du système de traçage ggplot2 et comment les utiliser. Cependant, veuillez noter qu’il ne s’agit que d’une introduction de base au système de traçage ggplot2. En réalité, ggplot2 est un système de traçage très puissant mais extrêmement vaste et vous pouvez facilement écrire un livre dessus.

Cependant, cet article couvrira certains éléments de base d’un graphique ggplot et construira trois graphiques à l’aide de ces éléments de base.

Blocs de construction de ggplot

Avant de faire cela, nous devons comprendre les éléments de base d’un graphe ggplot.

  • Parcelle – C’est la zone de traçage sur laquelle nous allons construire la parcelle.
  • Données – Il s’agit des données qui seront utilisées dans le tracé.
  • Cartographie esthétique – C’est l’organisation de vos données sur la parcelle. Cela indique à ggplot quels points de données vont sur quel axe, de quelle couleur ils doivent être, quelle forme ils doivent avoir, etc. La cartographie esthétique contrôle essentiellement l’aspect visuel des objets géométriques que nous traçons.
  • Geom – Ce sont les différents objets géométriques que nous placerons sur la zone de tracé. Ils peuvent être des formes comme un point pour un nuage de points, des lignes, des courbes, etc. Ces objets représentent vos données sur le tracé.

Chacun de ces blocs est représenté par des fonctions dans R. Donc, fondamentalement, pour chacun de ces blocs, nous allons écrire une fonction.

A lire aussi :  Les 11 outils de science des données les plus utilisés en 2022

Faites défiler pour continuer

Il y a beaucoup plus dans ggplot que cela, mais pour le moment, nous allons commencer par voir comment fonctionnent ces quatre éléments.

Commençons

Alors sans plus tarder, lançons R et commençons à construire un graphe ggplot.

Mais avant de pouvoir commencer à explorer ggplot2, vous devez l’installer si vous ne l’avez pas déjà fait.

Installer le paquet ggplot2

install.packages("ggplot2") 

Une fois cette installation terminée avec succès, chargeons ce package.

library(ggplot2)

Créer un tracé vierge

Maintenant que nous avons installé et chargé le package ggplot2, construisons un tracé à partir de zéro. Nous devons donc d’abord construire le premier élément que nous avons présenté plus tôt.

Parcelle – C’est la zone de traçage sur laquelle nous allons construire la parcelle.

ggplot()

C’est ça. Notez que le nom de la fonction que nous avons utilisé est ggplot. Ce n’est pas ggplot2. ggplot2 est le nom du package qui contient cette fonction.

Cela créera un tracé vide. Vous devriez pouvoir voir cela dans la fenêtre des tracés de R Studio.

Graphique vierge créé à l'aide de ggplot

Graphique vierge créé à l’aide de ggplot

Alimenter les données en tracé

Passons maintenant au deuxième point.

Données – Il s’agit des données qui seront utilisées dans le tracé.

Donnons quelques données à ggplot. Cela ne sera pas tracé. Mais nous ne faisons que rendre certaines données accessibles à l’intrigue. Veuillez également noter que ggplot n’accepte que l’objet de bloc de données comme données. Il n’acceptera pas une matrice, un vecteur, une liste ou tout autre type de données. Je ne comprends pas cette limitation mais c’est comme ça.

Pour cette démonstration, je vais utiliser un ensemble de données intégré dans R nommé iris. Cela fait partie de la base R et vous n’avez pas besoin d’installer de package supplémentaire pour cela.

Vous pouvez voir quelles sont ces données en exécutant la commande suivante dans R.

head(iris)
Jeu de données IRIS

Jeu de données IRIS

Comme vous pouvez le voir, il a cinq champs. Quatre de ces champs sont numériques et le dernier est catégoriel. Cet ensemble de données est des mesures de 150 fleurs de 3 espèces différentes de fleur IRIS.

Cet ensemble de données comporte quatre mesures numériques et un champ identifiant l’espèce de la fleur. Maintenant, nous allons utiliser cet ensemble de données et voir comment nous pouvons tracer ces données en utilisant ggplot2.

Maintenant, envoyons ces données au ggplot. Pour ce faire, passez un paramètre nommé data à la fonction ggplot comme indiqué ci-dessous. Les données que nous avons fournies à ggplot sont une trame de données nommée iris.

ggplot(data = iris).

Cartographie esthétique

Votre tracé sera toujours vide. Par cette commande, nous venons de passer l’iris de la trame de données à ggplot. Passons maintenant au troisième point.

Cartographie esthétique – C’est l’organisation de vos données sur la parcelle.

Nous allons maintenant définir la cartographie esthétique des données. Dans sa forme la plus simple, nous définissons simplement quelles données doivent aller sur l’axe X et ce qui doit aller sur l’axe Y. Pour ce faire, passez une autre fonction nommée aes à la fonction ggplot.

ggplot(data = iris , mapping = aes(x = Sepal.Length , y = Sepal.Width))

Par cette commande, nous avons dit à ggplot de mettre Sepal Length sur l’axe X et Sepal Width sur l’axe Y. Maintenant, regardons notre intrigue. Cela ressemble à ceci.

Tracé avec mappage des axes X et Y

A lire aussi :  Algorithmes de planification dans les systèmes d'exploitation à l'aide de l'EDF (Earliest Deadline First)

Tracé avec mappage des axes X et Y

Auparavant, l’intrigue était vide. Maintenant, nous pouvons voir deux axes. Sur l’axe X, nous voyons la longueur du sépale et sur l’axe Y, nous pouvons voir la largeur du sépale. Il a également tracé une jolie petite grille basée sur les valeurs de Sepal Length et Sepal Width.

Mais nous ne voyons toujours aucun point de données sur le graphique. Tout ce que notre commande a fait est de formater le tracé. C’est exactement ce que fera la fonction ggplot.

Nous allons maintenant passer au quatrième point.

géom

Le tracé réel des données sur le tracé sera effectué par des objets géométriques, c’est-à-dire geom. Maintenant, ajoutons le geom à notre tracé.

Pour cela, nous ajoutons les fonctions geom._* à la fonction ggplot comme indiqué ci-dessous. Notez que cette commande n’est pas complète. Mais lorsque vous tapez jusqu’à ce point, vous verrez une liste d’options geom qui s’offrent à vous.

ggplot(data = iris , mapping = aes(x = Sepal.Length , y = Sepal.Width)) + geom_

Vous pouvez voir les options dans la capture d’écran ci-dessous. La géom que vous choisissez dépend du type de terrain que vous souhaitez.

Options géom dans ggplot

Options géom dans ggplot

Maintenant, terminons la commande. Pour cette démonstration, je vais tracer un nuage de points qui n’est que des points.

ggplot(data = iris , mapping = aes(x = Sepal.Length , y = Sepal.Width)) + geom_point()

Maintenant, regardons notre intrigue.

Notre premier tracé avec ggplot

Nuage de points utilisant ggplot

Nuage de points utilisant ggplot

Et vous y êtes. Votre premier tracé avec ggplot est prêt.

Mais c’est un peu terne, non ? Ajoutons-y un peu de couleur.

ggplot(data = iris , mapping = aes(x = Sepal.Length , y = Sepal.Width)) + geom_point(color = “red”)

Pouvez-vous repérer la différence entre cette commande et la précédente ? J’ai ajouté un paramètre appelé color to geom point et lui ai passé une valeur de rouge. Cela indique à ggplot de colorer tous les points en rouge.

Voici à quoi ressemble notre intrigue maintenant.

Nuage de points en rouge

Nuage de points en rouge

Eh bien, disons que je m’ennuie des points dans mon nuage de points et que je veux changer la forme de mes points. J’ajoute un autre paramètre nommé shape et lui passe la valeur quatre. Comme vous pouvez le voir dans la capture d’écran sous cette commande, ggplot a changé la forme des points dans le nuage de points.

ggplot(data = iris , mapping = aes(x = Sepal.Length , y = Sepal.Width)) + geom_point(color = "red"  , shape = 4)
Nuage de points en rouge mais avec une croix au lieu de points

Nuage de points en rouge mais avec une croix au lieu de points

Eh bien, je suppose que vous obtenez l’image, n’est-ce pas? Pour changer les points, vous ajoutez plus de paramètres à la fonction geom.

Les paramètres que vous pouvez passer dépendent du geom que vous utilisez. Ce n’est que la pointe de l’iceberg et si vous commencez à creuser plus profondément dans ggplot, vous trouverez des opportunités presque infinies.

Maintenant, changeons le geom du point à une ligne. Cela générera un tracé linéaire au lieu d’un nuage de points.

ggplot(data = iris , mapping = aes(x = Sepal.Length , y = Sepal.Width)) + geom_line(color = "red"  , shape = 4)
Tracé linéaire au lieu d'un nuage de points.  Ça a l'air un peu moche, n'est-ce pas ?

A lire aussi :  Lequel acheter : le Arris Motorola SB6141 ou SB6121 ?

Tracé linéaire au lieu d’un nuage de points. Ça a l’air un peu moche, n’est-ce pas ?

Comme vous pouvez le voir, cela a changé les points en ligne. Que diriez-vous de tracer une variable numérique et une autre catégorielle ?

Dans notre iris de données, l’espèce est une donnée catégorique. Ce n’est pas numérique comme la longueur ou la largeur mais une classe.

Traçons un autre nuage de points mais au lieu de Sepal Length sur l’axe X, traçons Species sur l’axe X. Vous pouvez voir que pour cela, je dois changer la fonction ggplot aes. Au lieu de Sepal Length, j’ai passé Species à l’axe x.

ggplot(data = iris , mapping = aes(x = Species , y = Sepal.Width)) + geom_point(color = "red")

Et voici la sortie que nous obtenons.

Nuage de points avec une variable numérique et une variable catégorielle

Nuage de points avec une variable numérique et une variable catégorielle

Mais généralement, si vous souhaitez tracer une variable catégorique par rapport à une variable numérique, vous pouvez tracer une boîte à moustaches au lieu d’un nuage de points. La boîte à moustaches montre les valeurs médianes, minimales et maximales et elle montre également les valeurs aberrantes.

Alors maintenant, traçons une boîte à moustaches au lieu d’un nuage de points. Alors maintenant, nous changeons le geom du point au box plot.

ggplot(data = iris , mapping = aes(x = Species , y = Sepal.Width)) + geom_boxplot(color = "red")
Boîte à moustaches entre une variable numérique et une variable catégorielle

Boîte à moustaches entre une variable numérique et une variable catégorielle

Vous ennuyez-vous ou êtes-vous déjà sauvé? Changeons la couleur de ces cases et ajoutons également une couleur de remplissage à l’intérieur des cases.

ggplot(data = iris , mapping = aes(x = Species , y = Sepal.Width)) + geom_boxplot(color = "purple" , fill = "black")
Boîte à moustaches avec couleur et remplissage

Boîte à moustaches avec couleur et remplissage

Sommaire

Donc jusqu’à présent, nous avons créé un nuage de points, un tracé linéaire et un tracé en boîte. Nous y avons ajouté de la couleur.

Vous pouvez faire beaucoup plus que ces 3 tracés que j’ai illustrés jusqu’à présent. De manière réaliste, la puissance de ggplot est presque incroyable.

C’est un outil pratique à avoir dans votre boîte à outils.

Limites

Mais comme tout outil, il a aussi ses limites. Il ne peut certainement pas faire certaines choses que le treillis peut faire. Ce n’est pas très bon avec les tracés 3D et vous devrez peut-être utiliser rgl pour cela. Il ne peut pas gérer les graphes de type théorie des graphes qui ont des nœuds ou des structures d’arbre de décision.

Alors c’est tout pour cette fois les gens. S’il vous plaît laissez-moi savoir ce que vous pensez dans la section des commentaires ci-dessous. Si vous souhaitez des améliorations dans ce post, faites-le moi savoir et je serais heureux de mettre en œuvre nos suggestions.

Cet article est exact et fidèle au meilleur de la connaissance de l’auteur. Le contenu est uniquement à des fins d’information ou de divertissement et ne remplace pas un conseil personnel ou un conseil professionnel en matière commerciale, financière, juridique ou technique.

Bouton retour en haut de la page