在ggplot2中设置binwidth

时间:2013-09-18 11:07:25

标签: r datetime ggplot2

我有一个在x轴上有时间向量的图,想要将“binwidth”参数设置为“1天”或其他一些日期 - 时间字符串,直到现在我计算“1天”的秒数或“12小时”。是否有一个函数将“1天”解释为数字,就像函数seq用“by”参数一样?

times<-seq(as.POSIXct("2013-07-01 00:00:00",origin = "1960-01-01",tz="GMT"),
         as.POSIXct("2013-07-8 00:00:00",origin = "1960-01-01",tz="GMT"),by="1 day")

binwi<-as.numeric(times[2])-as.numeric(times[1])
df<-data.frame(times=sample(times,100,T))

p<-ggplot(df,aes(x=times,y=..count..)) 
p<-p + geom_bar(position = "identity",binwidth=binwi)
p

1 个答案:

答案 0 :(得分:2)

您可以使用

查看seq处理"1 day"的方式
debug(seq)
seq(as.Date("2000-01-01"),as.Date("2000-01-10"),"1 day")
undebug(seq)

然后使用相应的代码解决您的问题。