heatmap(Web_Data$Timeinpage)
str(Web_Data)
heat = c(t(as.matrix(Web_Data$Timeinpage[,-1])))
heatmap(heat)
答案 0 :(得分:0)
这里需要注意的几件事:
1)通过在c()
中包含c(t(as.matrix(Web_Data$Timeinpage[,-1])))
运算符,您正在创建单个向量而不是矩阵。您可以通过运行以下命令来查看此内容:is.matirx(c(t(as.matrix(Web_Data$Timeinpage[,-1]))))
。 heatmap
(我相信)正在检查矩阵,因为...
2)您需要提供一个至少包含两行两列的矩阵,此功能才能起作用。目前,您只能提供向量-时间。您需要提供其他一些有趣的功能以使其正常工作,例如Continent
。
3)如果仅打算绘制一个字段,则可以考虑使用suggested here并使用image()
函数。 (我在下面提供了一个示例)。
4)我发现热图功能看上去有些过时。您可能需要考虑其他流行的功能,例如ggplot的geom_tile
。 (请参见here)。
下面是一个示例代码,应产生输出:
#fake data
Web_Data <- data.frame("Timeinpage" = c(123,321,432,555,332,1221,2,43,0, NA,10, 44),
OTHER = rep(c("good", "bad",6)) )
#a matrix with TWO columns from my data frame. Notice the c() is removed and I am not transposing. Also removing the , from [,-1]
heat <- matrix(c(Web_Data$Timeinpage[-1], Web_Data$OTHER[-1]), 2,11)
#output
heatmap(heat)
#one row
heat2 <- as.matrix(sort(Web_Data$Timeinpage[-1])) #sorting as well
#output
image(heat2)