我有一个带有时间戳和值的数据框(一个月的值大约每 5 分钟一次)。现在我想在 x 轴上绘制一天,在 y 轴上绘制一天中的时间,并将值作为颜色。最好是如果我可以控制 y 轴上的分箱(5 分钟、10 分钟、15 分钟 .. 将值作为每个箱的平均值)。
我正在试验 ggplot2,但我无法得到合理的结果。
p_heat <- ggplot(data = data,
aes(x = days(timestamp),
y = minutes(timestamp) + hours(timestamp) * 60, fill = value)) +
geom_tile()
测试数据可以如下生成:
data <- data.frame(timestamp = seq(from = as.POSIXct("2013-09-01 00:00:00"),
to = as.POSIXct("2013-10-01 00:00:00"), by = "5 mins"),
value = runif(8641, 0, 1))
这是迄今为止我能得到的最好的:) 我也尝试过使用 scale_x/y_date()
我会很高兴有一些提示将我推向正确的方向。谢谢!