繁体   English   中英

我想在代码中使用热图,但出现错误

[英]I want to use heatmap in my code but i am getting error

heatmap(Web_Data$Timeinpage) 
str(Web_Data)
heat = c(t(as.matrix(Web_Data$Timeinpage[,-1])))
heatmap(heat)

这里要注意一些事项:

1)通过将c()运算符包含在c(t(as.matrix(Web_Data$Timeinpage[,-1])))来创建单个向量,而不是矩阵。 您可以通过运行以下is.matirx(c(t(as.matrix(Web_Data$Timeinpage[,-1]))))看到此内容: is.matirx(c(t(as.matrix(Web_Data$Timeinpage[,-1])))) heatmap (我相信)正在检查矩阵,因为...

2)您需要提供至少包含两行两列的矩阵,此功能才能正常工作。 目前,您只能提供向量-时间。 您需要提供其他一些有趣的功能以使其正常工作,例如Continent

3)如果只打算绘制一个场,则可以考虑按照此处的建议进行操作,并使用image()函数。 (我在下面提供了一个示例)。

4)我发现热图功能看上去有些过时。 您可能需要考虑其他流行的功能,例如ggplot的geom_tile (请参阅此处 )。

以下是应产生输出的示例代码:

#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)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM