所以我正在尝试使用ComplexHeatmap package创建一个热图,我的数据的第一列是物种名称,例如“志贺氏菌”和接下来的8列以其样本id为标题,表示每个物种在样本中被观察到的次数(以数值表示)。
要创建一个热图,我需要一个数字矩阵,所以我像这样获取my_matrix <- as.matrix(my_data[,c(2:9)]),获取除第一个包含字符值的列之外的所有列,然后通过species_name <- as.data.frame(my_data$species_name)将物种名称存储为单独的数据帧,然后尝试使用rownames函数将物种名称分配回相应的行以显示在热图中,但显然这不起作用。简单的示例如下所示:
Heatmap(my_matrix, rownames(species_name), show_row_names = TRUE) 我没有得到任何警告或错误,热图出现在绘图部分,但仍然没有分配行名,如下图所示,最后我的问题是如何正确分配它们?
我希望我的物种名称显示为行名,例如"Shigella" instead of "row 1", "Salmonella" instead of "row 2", etc.
发布于 2021-08-08 04:37:10
你可以试试-
my_matrix <- as.matrix(my_data[,c(2:9)])
rownames(my_matrix) <- my_data$species_name
Heatmap(my_matrix, show_row_names = TRUE)https://stackoverflow.com/questions/68697618
复制相似问题