【发布时间】:2016-06-11 20:29:35
【问题描述】:
我正在尝试使用以下数据创建热图:
> head(myData.aggregated)
datetime value date time
1 2016-03-31 14:19:00 3 2016-03-31 2016-06-11 14:19:00
2 2016-03-31 14:49:00 69 2016-03-31 2016-06-11 14:49:00
3 2016-03-31 15:49:00 5 2016-03-31 2016-06-11 15:49:00
4 2016-03-31 16:19:00 7 2016-03-31 2016-06-11 16:19:00
5 2016-03-31 17:49:00 2 2016-03-31 2016-06-11 17:49:00
6 2016-03-31 18:19:00 7 2016-03-31 2016-06-11 18:19:00
> tail(myData.aggregated)
datetime value date time
90 2016-04-06 13:19:00 1 2016-04-06 2016-06-11 13:19:00
91 2016-04-06 13:49:00 25 2016-04-06 2016-06-11 13:49:00
92 2016-04-06 14:19:00 7 2016-04-06 2016-06-11 14:19:00
93 2016-04-06 14:49:00 1 2016-04-06 2016-06-11 14:49:00
94 2016-04-06 22:19:00 3 2016-04-06 2016-06-11 22:19:00
95 2016-04-06 22:49:00 14 2016-04-06 2016-06-11 22:49:00
还有以下 ggplot2 命令。
ggplot(myData.aggregated, aes(x = time, y = date, fill = scale(value))) + geom_tile() + coord_equal()
只要我添加 coord_equal() 结果就是一个空白图。有人可以向我解释为什么会发生这种情况以及如何解决它。我的目标是每 30 分钟获得一个带有方形图块的热图。
更新 1:
> dput(head(myData.aggregated))
structure(list(datetime = structure(c(1459426740, 1459428540,
1459432140, 1459433940, 1459439340, 1459441140), class = c("POSIXct",
"POSIXt"), tzone = ""), value = c(3L, 69L, 5L, 7L, 2L, 7L), date = structure(c(16891,
16891, 16891, 16891, 16891, 16891), class = "Date"), time = structure(c(1465647540,
1465649340, 1465652940, 1465654740, 1465660140, 1465661940), class = c("POSIXct",
"POSIXt"), tzone = "")), .Names = c("datetime", "value", "date",
"time"), row.names = c(NA, 6L), class = "data.frame")
【问题讨论】:
-
请在您的问题中输入
dput(myDataSample)的输出,其中myDataSample是您的数据框样本,在使用您的代码运行时会显示相同的问题。 -
scale(x)中的x是什么?你的意思是scale(value)? -
没错,我的意思是
scale(value)
标签: r datetime ggplot2 heatmap