So zeichnen sie eine zeitreihe in r auf (mit beispielen)
Häufig möchten Sie möglicherweise eine Zeitreihe in R grafisch darstellen, um zu visualisieren, wie sich die Werte in der Zeitreihe im Laufe der Zeit ändern.
In diesem Tutorial wird erklärt, wie Sie dies mithilfe der Datenvisualisierungsbibliothek ggplot2 schnell durchführen können.
Grundlegende Zeitreihendarstellung in R
Angenommen, wir haben den folgenden Datensatz in R:
#create dataset df <- data.frame(date = as . Date (" 2021-01-01 ") - 0:99, sales = runif (100, 10, 500) + seq (50, 149)^2) #view first six rows head(df) dirty date 1 2021-01-01 2845.506 2 2020-12-31 2837.849 3 2020-12-30 3115.517 4 2020-12-29 2847.161 5 2020-12-28 3374.619 6 2020-12-27 3182.005
Wir können den folgenden Code verwenden, um mit ggplot2 ein einfaches Zeitreihendiagramm für diesen Datensatz zu erstellen:
library (ggplot2) #create time series plot p <- ggplot(df, aes (x=date, y=sales)) + geom_line() #display time series plot p
Formatieren Sie Datumsangaben auf der X-Achse
Wir können die Funktion „scale_x_date() *“ verwenden, um die auf der x-Achse des Diagramms angezeigten Daten zu formatieren. Diese Funktion akzeptiert die folgenden Argumente:
- %d: Tag als Zahl zwischen 0 und 31
- %a: abgekürzter Wochentag (zum Beispiel „Di“)
- %A: ungekürzter Wochentag (zum Beispiel „Dienstag“)
- %m : Monate zwischen 0 und 12
- %b: abgekürzter Monat (zum Beispiel „Jan“)
- %B: ungekürzter Monat (zum Beispiel „Januar“)
- %y: 2-stelliges Jahr (zum Beispiel „21“)
- %Y: 4-stelliges Jahr (zum Beispiel „2021“)
- %W: Woche des Jahres zwischen 0 und 52
* Damit diese Funktion funktioniert, muss die x-Achsenvariable eine Datumsvariable sein. Wenn dies noch nicht geschehen ist, können Sie es mit as.Date( variable_name) schnell in ein solches konvertieren.
Der folgende Code zeigt, wie man eines dieser Formate in der Praxis verwendet:
p + scale_x_date ( date_labels = " %b %Y ")
Mit dem Argument date_breaks können Sie auch häufigere (oder seltenere) Pausen entlang der x-Achse hinzufügen. Beispielsweise könnten wir alle zwei Wochen Daten auf der X-Achse anzeigen:
p + scale_x_date ( date_breaks = " 2 week ")
Wir können die x-Achsenbeschriftungen auch leicht verzerren, indem wir das folgende Argument verwenden:
p + theme ( axis.text.x = element_text (angle= 50 , hjust= 1 ))
Schließlich können wir das Thema, die Achsenbeschriftungen und den Titel ändern, um die Zeitreihendarstellung optisch ansprechender zu gestalten:
p <- ggplot(df, aes (x=date, y=sales)) + geom_line( color =" turquoise4 ") + theme_minimal() + labs(x="", y=" Sales ", title=" Total Sales (Past 100 Days) ") + theme( plot.title = element_text (hjust=0.5, size=20, face=" bold ")) p
Zusätzliche Ressourcen
Eine vollständige Anleitung zu den besten ggplot2-Themes
Die vollständige Anleitung zu ggplot2-Titeln
So erstellen Sie nebeneinander liegende Diagramme in ggplot2