如果我有这样的数据
DF <- data.frame(
date = seq(Sys.Date()-1000, len=1000, by="1 day")[sample(1000, 500)],
price = runif(500)
)
如何使用ggplot2绘制时间函数中的平均价格,例如,以月为单位?
发布于 2010-01-29 13:10:45
您需要使用cut(,"months")
将日期转换为月份,然后使用ggplot stat_summary
将mean
应用于每个月。下面是如何在qplot
中执行此操作,它是ggplot
的一个紧凑、方便的包装器。
qplot(as.Date(cut(date,"months")),
price, data=DF, stat="summary", fun.y="mean", xlab="date")
alt text http://www.imagechicken.com/uploads/1264786975079660800.png
Base plot也可以这样做:
plot(aggregate(DF$price, list(as.Date(cut(DF$date, "month"))), mean))
alt text http://www.imagechicken.com/uploads/1264786673030283100.png
https://stackoverflow.com/questions/2161384
复制相似问题