Table des matières:
Vidéo: Plotting with ggplot2: Part 1 2025
Un geom ggplot2 indique à l'intrigue comment vous voulez afficher vos données dans R. Par exemple, vous utilisez geom_bar () pour créer un graphique à barres. Dans ggplot2, vous pouvez utiliser une variété de geoms prédéfinis pour créer des types de tracé standard.
Un geom définit la disposition d'une couche ggplot2. Par exemple, vous pouvez utiliser des geoms pour créer des graphiques à barres, des diagrammes de dispersion et des diagrammes de lignes (ainsi que divers autres graphiques), comme vous pouvez le voir ci-dessous.
Chaque geom a une statistique par défaut, et chaque stat a un geom par défaut. En pratique, vous devez en spécifier un seul.
Geom | Description | Valeur par défaut |
---|---|---|
geom_bar () | Diagramme à barres | stat_bin () |
geom_point () | Diagramme de dispersion | stat_identity () |
geom_line () | Diagramme linéaire, reliant les observations dans l'ordre de
x - valeur |
stat_identity () |
geom_boxplot | Trame à moustaches | stat_boxplot () |
geom_path | Diagramme linéaire, reliant les observations dans l'ordre original | stat_identity () |
geom_smooth | Ajouter une moyenne conditionnée lissée | stat_smooth () |
geom_histogram | Un alias pour geom_bar () stat_bin () | stat_bin () |
Création d'un diagramme à barres
Pour créer un graphique à barres, vous utilisez la fonction geom_bar (). Cependant, notez que la statistique par défaut est stat_bin (), qui est utilisée pour découper vos données dans des chutiers. Ainsi, le comportement par défaut de geom_bar () est de créer un histogramme.
Par exemple, pour créer un histogramme de la profondeur des séismes dans le jeu de données des séismes, essayez: >> ggplot (tremblements, aes (x = profondeur)) + geom_bar ()> ggplot (quakes, aes (x = depth)) + geom_bar (binwidth = 50)
Notez que votre mapping ne définit que la variable
x -axis (dans ce cas, quakes $ depth). Un argument utile pour geom_bar () est binwidth, qui contrôle la taille des classes dans lesquelles vos données sont coupées. Cela crée cette intrigue.
Dans l'exemple suivant, vous utilisez aggregate () pour calculer le nombre de tremblements à différentes strates de profondeur: >> Noms agg (quakes. agg) <- c ("depth", "mag")
Maintenant vous pouvez tracer l'objet tremble: agg avec geom_bar (stat = "identity"): >> ggplot (quakes. agg, aes (x = profondeur, y = mag)) + + geom_bar (stat = "identité")
En résumé, vous pouvez utiliser geom_bar () pour créer un histogramme et laisser ggplot2 résumer vos données, ou vous pouvez résumer vos données, puis utilisez stat = "identity" pour tracer un graphique à barres.
Création d'un nuage de points
Pour créer un nuage de points, utilisez la fonction geom_point (). Un diagramme de dispersion crée des points (ou parfois des bulles ou d'autres symboles) sur votre graphique. Chaque point correspond à une observation dans vos données.
Vous avez probablement vu ou créé ce type de graphique un million de fois. Vous savez donc déjà que les nuages de points utilisent le système de coordonnées cartésiennes, où une variable est mappée à l'axe
x
et une seconde variable est mappé à l'axe
y . De la même manière, dans ggplot2 vous créez un mappage entre les variables x -axis et
y -axis. Ainsi, pour créer un tracé des données de tremblements, vous devez mapper $ quakes à l'axe x et trancher $ lat sur l'axe y : ggplot (tremblements de terre, aes (x = long, y = lat)) + geom_point () Ceci crée ce nuage de points. geom_point (). "Width =" 535 ">
Création d'un nuage de points avec geom_point ().
Création de graphiques en courbes
Ceci crée cette ligne.
geom_line (). "width =" 535 ">
Tracer un graphique linéaire avec geom_line ().
Vous pouvez utiliser geom_line () ou geom_path () pour créer un dessin au trait dans ggplot2. La différence est que geom_line () commence par ordonner les observations selon la valeur
x
