Domanda

sto lavorando con un frame di dati in cui una delle colonne è costituito da valori di data e ora POSIXct. Sto cercando di tracciare un istogramma di questi timestamp usando ggplot2 ma sto avendo due questioni:

  1. Non so come impostare la binwidth in geom_histogram(). Mi piacerebbe impostare ogni bin per un giorno o una settimana. Ho provato fornendo un oggetto difftime, ma ottengo un errore. Ho anche provato binwidth=1 ma R si blocca solo.

  2. Come faccio a impostare i limiti in scale_x_time()? L'unico modo ho potuto ottenere a lavoro era convertendo i miei timestamp POSIXct utilizzando as.Date().

È stato utile?

Soluzione

  1. Il binwidth viene misurata in secondi, in modo da bin a settimana insieme binwidth=7*24*60*60.
  2. Limiti può essere somministrato come un vettore di 2 oggetti POSIXct.

Un esempio:

y<-as.POSIXct('1970/01/01')+cumsum(rnorm(100,mean=24*60*60,sd=24*60*60))
p<-qplot(y,binwidth=7*24*60*60,fill=I('steelblue'),col=I('black'))
p<-p+scale_x_datetime(major="1 week",
                      minor="1 days",
                      format="%e/%m/%Y",
                      limits=c(as.POSIXct('1970/02/01'),
                               as.POSIXct('1970/03/31')))
print(p)
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top