Ich habe derzeit einige Daten, die im Grunde ein Faktor und ein Datum sind. Hier ist eine vereinfachte Vorstellung davon.Trennlinien mit ggplot (geom_line) bei Verwendung von stat = 'count'
date <- c(1901,1901,1901,1902,1902,1902,1901,1903,1902,1904,1902,1903,1903,1904,1905, 1901,1903,1902,1904,1902,1902,1903,1904,1902,1902,1901,1903,1903,1904,1905, 1905,1906,1907,1908,1901,1908,1907,1905,1906,1902,1903,1903,1903,1904,1905,1901,1901,1901,1902,1902,1902,1901,1903,1902,1904,1902,1903,1903,1904,1905,
1901,1903,1902,1904,1902,1902,1903,1904,1902,1902,1901,1903,1903,1904,1905,
1905,1906,1907,1908,1901,1908,1907,1905,1906,1902,1903,1903,1903,1904,1905,
1905,1906,1907,1908,1901,1908,1907,1920,1920,1920,1921,1921,1921,1921,1921)
genre <- sample(c("fiction","nonfiction"),105,replace=TRUE)
data <- as.data.frame(cbind(date,genre))
# I know this is not an ideal way to coerce to a numeric
data$date <- as.numeric(as.character(data$date))
So weit, so gut. Wie Sie sehen werden, wenn Sie es jedoch plotten, gibt es eine große Lücke in den Daten, die die Linie verdunkelt. Diese Handlung wird illustrieren.
library(ggplot2)
ggplot(data,aes(x=date,color=genre)) + geom_line(stat='count')
I this post gesehen haben, die eine Gruppe schlägt vor, das Hinzufügen, die ich tun kann.
data$group <- ifelse(data$date < 1910,1,2)
ggplot(data,aes(x=date,color=genre,group=group)) + geom_line(stat='count')
So scheint es keinen Weg, um die Farbästhetik ich für meine Ausgabe ein group
, währendstat='count'
mit und angeben möchten zu bewahren. Dieses Grundstück zum Beispiel zeigt sehr schön die Lücke in den Daten, verliert aber die Farbe/Unterscheidung auf dem Grundlage des genre
Faktor:
ggplot(data,aes(x=date,color=genre,group=group)) + geom_line(stat='count')
So ist dies nicht möglich? Fehle ich etwas? Gibt es einen besseren Weg, dies zu tun, oder muss ich summarize
oder anders mein Datum mutieren, so dass ich nicht auf stat='count'
in der Plot-Phase verlassen?
Sie nicht auf 'geom_bar' wechseln möchten, Daten wie diese würde es großartig aussehen. – PoGibas
@PoGibas Messepunkt; aber das ist nur eine minimale Probe; im realen Fall gibt es eine größere Auswahl an "Daten", * und * mehr "Genres", so dass ein Barplot überfüllt und schwer lesbar erscheint, aber ein Liniendiagramm (mit, sagen wir, 6 Zeilen, über 40 Jahre) wäre noch (hoffentlich) lesbar. – cforster