ggplot2 - Abweichende Diagramme
In den vorherigen Kapiteln haben wir uns verschiedene Arten von Diagrammen angesehen, die mit dem Paket „ggplot2“ erstellt werden können. Wir werden uns nun auf die Variation derselben konzentrieren, wie divergierende Balkendiagramme, Lutscherdiagramme und vieles mehr. Zunächst erstellen wir divergierende Balkendiagramme. Die folgenden Schritte sind nachstehend aufgeführt:
Datensatz verstehen
Laden Sie das gewünschte Paket und erstellen Sie eine neue Spalte mit dem Namen "Fahrzeugname" im mpg-Datensatz.
#Load ggplot
> library(ggplot2)
> # create new column for car names
> mtcars$`car name` <- rownames(mtcars)
> # compute normalized mpg
> mtcars$mpg_z <- round((mtcars$mpg - mean(mtcars$mpg))/sd(mtcars$mpg), 2)
> # above / below avg flag
> mtcars$mpg_type <- ifelse(mtcars$mpg_z < 0, "below", "above")
> # sort
> mtcars <- mtcars[order(mtcars$mpg_z), ]
Bei der obigen Berechnung wird eine neue Spalte für Fahrzeugnamen erstellt und der normalisierte Datensatz mithilfe der Rundungsfunktion berechnet. Wir können auch das Flag avg über und unter verwenden, um die Werte der Typfunktionalität abzurufen. Später sortieren wir die Werte, um den erforderlichen Datensatz zu erstellen.
Die empfangene Ausgabe ist wie folgt:
Konvertieren Sie die Werte in Faktor, um die sortierte Reihenfolge in einem bestimmten Diagramm beizubehalten, wie unten erwähnt -
> # convert to factor to retain sorted order in plot.
> mtcars$`car name` <- factor(mtcars$`car name`, levels = mtcars$`car name`)
Die erhaltene Ausgabe wird unten erwähnt -
Abweichendes Balkendiagramm
Erstellen Sie nun ein divergierendes Balkendiagramm mit den genannten Attributen, das als erforderliche Koordinaten verwendet wird.
> # Diverging Barcharts
> ggplot(mtcars, aes(x=`car name`, y=mpg_z, label=mpg_z)) +
+ geom_bar(stat='identity', aes(fill=mpg_type), width=.5) +
+ scale_fill_manual(name="Mileage",
+ labels = c("Above Average", "Below Average"),
+ values = c("above"="#00ba38", "below"="#f8766d")) +
+ labs(subtitle="Normalised mileage from 'mtcars'",
+ title= "Diverging Bars") +
+ coord_flip()
Note - Ein divergierendes Balkendiagramm markiert einige Bemaßungselemente, die in Bezug auf die genannten Werte nach oben oder unten zeigen.
Die Ausgabe des divergierenden Balkendiagramms wird unten erwähnt, wo wir die Funktion geom_bar zum Erstellen eines Balkendiagramms verwenden -
Divergierende Lutschertabelle
Erstellen Sie ein divergierendes Lollipop-Diagramm mit denselben Attributen und Koordinaten, wobei nur die zu verwendende Funktion geändert wird, z. B. geom_segment (), das beim Erstellen der Lollipop-Diagramme hilfreich ist.
> ggplot(mtcars, aes(x=`car name`, y=mpg_z, label=mpg_z)) +
+ geom_point(stat='identity', fill="black", size=6) +
+ geom_segment(aes(y = 0,
+ x = `car name`,
+ yend = mpg_z,
+ xend = `car name`),
+ color = "black") +
+ geom_text(color="white", size=2) +
+ labs(title="Diverging Lollipop Chart",
+ subtitle="Normalized mileage from 'mtcars': Lollipop") +
+ ylim(-2.5, 2.5) +
+ coord_flip()
Abweichendes Punktdiagramm
Erstellen Sie auf ähnliche Weise ein divergierendes Punktdiagramm, bei dem die Punkte die Punkte in Streudiagrammen in einer größeren Dimension darstellen.
> ggplot(mtcars, aes(x=`car name`, y=mpg_z, label=mpg_z)) +
+ geom_point(stat='identity', aes(col=mpg_type), size=6) +
+ scale_color_manual(name="Mileage",
+ labels = c("Above Average", "Below Average"),
+ values = c("above"="#00ba38", "below"="#f8766d")) +
+ geom_text(color="white", size=2) +
+ labs(title="Diverging Dot Plot",
+ subtitle="Normalized mileage from 'mtcars': Dotplot") +
+ ylim(-2.5, 2.5) +
+ coord_flip()
Hier repräsentieren die Legenden die Werte „Überdurchschnittlich“ und „Unterdurchschnittlich“ mit unterschiedlichen Farben von Grün und Rot. Das Punktdiagramm vermittelt statische Informationen. Die Prinzipien sind die gleichen wie im divergierenden Balkendiagramm, außer dass nur Punkte verwendet werden.