Wie zeichnet man eine Treppenstufenfunktion mit ggplot?

15

Ich habe die Grafik wie folgt: Bildbeschreibung hier eingeben

R-Code für die Generierung ist:

DF <- data.frame(date = as.Date(runif(100, 0, 800),origin="2005-01-01"), 
                 outcome = rbinom(100, 1, 0.1))
DF <- DF[order(DF$DateVariable),] #Sort by date
DF$x <- seq(length=nrow(DF)) #Add case numbers (in order, since sorted)
DF$y <- cumsum(DF$outcome)
library(ggplot2)
ggplot(DF, aes(x,y)) + geom_path() + #Ploting
scale_y_continuous(name= "Number of failures") +
scale_x_continuous(name= "Operations performed")

Ich möchte so etwas: Bildbeschreibung hier eingeben

Der Unterschied besteht in der Form von Schritten im Fehlerfall (ich brauche rechteckig).

Meine Fragen sind:

  • Wie erreicht man das mit ggplot2?
  • Gibt es eine bessere Option zur Visualisierung der Fehlerrate über die Zeit / die durchgeführten Iterationen?
  • Welche Variante ist leichter zu verstehen: dies oder das oder vielleicht etwas anderes?
Yuriy Petrovskiy
quelle
2
Haben Sie sich die Online-Hilfe angesehen, had.co.nz/ggplot2/geom_step.html ?
chl
Ja, das ist es. Vermisst dies in der Dokumentation.
Yuriy Petrovskiy
2
@Yuriy, bitte beantworten Sie Ihre Frage. Es würde zukünftigen Benutzern mit ähnlichen Problemen helfen.
mpiktas
@mpiktas, fügte eine Antwort für die Hauptfrage hinzu. Irgendwelche Meinungen zu anderen Fragen?
Yuriy Petrovskiy

Antworten:

17

Wie von @chl bemerkt, wird in dem obigen Beispiel einfach geom_step () anstelle von geom_path () verwendet.

Ergebnis (der Plot hat unterschiedliche Daten):

Bildbeschreibung hier eingeben

Yuriy Petrovskiy
quelle