Come tracciare una funzione dei gradini con ggplot?


15

Ho il grafico in questo modo: inserisci qui la descrizione dell'immagine

Il codice R per generarlo è:

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")

Voglio qualcosa del genere: inserisci qui la descrizione dell'immagine

La differenza è sotto forma di passaggi in caso di fallimento (ho bisogno di rettangolare).

Le mie domande sono:

  • Come raggiungere questo obiettivo con ggplot2?
  • Esiste un'opzione migliore per visualizzare il tasso di errore nel tempo / iterazioni eseguite?
  • Quale variante è più facile da capire: questo o quello o forse qualcosa di diverso?

2
Hai consultato la guida in linea, had.co.nz/ggplot2/geom_step.html ?
chl

Sì, eccolo. Perso questo nella documentazione.
Yuriy Petrovskiy,

2
@Yuriy, per favore rispondi alla tua domanda. Aiuterebbe i futuri utenti con problemi simili.
mpiktas,

@mpiktas, ha aggiunto una risposta alla domanda principale. Qualche opinione su altre domande?
Yuriy Petrovskiy,

Risposte:


17

Come notato da @chl, la risposta sta semplicemente usando geom_step () invece di geom_path () nell'esempio sopra.

Risultato (la trama ha dati diversi):

inserisci qui la descrizione dell'immagine

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.