Ich versuche, ein ggplot Liniendiagramm mit einer Zeitreihe zu erstellen, die Daten fehlt. Ich möchte die NA-Werte als NA auf dem Diagramm selbst bezeichnen, aber nicht die Linie durch diese Punkte zeichnen (dh eine Unterbrechung in der Linie haben). Unten ist ein reproduzierbares Beispiel von dem, was ich bisher versucht habe. Ich würde mir wünschen, dass das Diagramm für jedes Jahr, in dem die Nummer = NA ist, ein Label "NA" genau über dem Punkt y = 0 hat.Label-NA-Werte in geom_line
library(ggplot2)
year <- c(1990:2000)
number <- c(10, 20, 30, 40, NA, 50, 60, NA, 70, 80, 90)
data <- data.frame(year, number)
ggplot(data, aes(x = year, y = number)) +
geom_line() +
geom_text(data = subset(data, !is.na(number)),
aes(label = number),
hjust = 1,
vjust = -1) +
geom_text(data = subset(data, is.na(number)),
aes(label = "NA"))
Um die Warnung 'Entfernte 2 Zeilen mit fehlenden Werten (geom_text)' zu vermeiden. ' Sie sollten auch Teilmenge Nummer (dh 'geom_text (Daten = Teilmenge (Daten,! is.na (Nummer)), AES (Label = Teilmenge (Anzahl,! is.na (Nummer))), hjust = 1, vjust = -1) ') –
Auch, nur um ein Stickler zu sein, würde ich empfehlen,' Daten' als Objektnamen zu verwenden, da es eine Basis-R-Funktion ist. –