我正在使用heatmap.2函数在R中创建一个热图,其中时间范围为“ 0-3”,“ 4-7” ...作为行名。在描述时间范围时很难解释,因为时间范围实际上应该是0:00-3:59、4:00-7:59。.
是否可以在每个行单元格之间将“ 00:00”,“ 04:00”,“ 08:00” ..作为y轴标签?
我浏览了“ heatmap.2”的帮助页面,找不到解决方法。
这是我的情节 enter image description here
答案 0 :(得分:0)
“是否可以在每个行单元格之间将“ 00:00”,“ 04:00”,“ 08:00” ..作为y轴标签?” 不,我认为这是不可能的;这实际上也没有任何意义,因为热图以网格状布局显示不同类别的数值数据。这里重点放在类别(与分类数据中一样),因此显示行(或列)单元格之间的数字值实际上没有任何意义。
此外,您可以轻松地用labRow
(或labCol
)重新标记行(或列)标签;由于您不提供示例数据,因此这里是可重复的示例
# Generate sample data
set.seed(2018)
mat <- matrix(rnorm(7 * 6), nrow = 6, ncol = 7)
colnames(mat) <- c("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday")
rownames(mat) <- c("1-4", "5-8", "9-12", "13-16", "17-20", "21-24")
显示热图
library(gplots)
rowlabels <- c("0:00-3:59", "4:00-7:59", "8:00-11.59", "12:00-15.59", "16:00-19:59", "20:00-23:59")
heatmap.2(
mat,
Rowv = NULL, Colv = NULL,
trace = "none", dendrogram = "none",
labRow = rowlabels,
margins = c(10, 10))