每个框的热图表示使用R的多个源

ss2ws0br  于 2023-04-09  发布在  其他
关注(0)|答案(1)|浏览(85)

我想绘制与以下内容类似的热图:

其中每个框对应三行。我正在考虑使用R中的ComplexHeatmap包,但找不到示例,欢迎任何建议!

axr492tv

axr492tv1#

下面是一个ggplot2的例子。facet_grid后面的代码修改了主题,看起来更像你的例子。

df <- data.frame(row = sample(LETTERS[1:10], 1e3, replace = TRUE),
                 col = sample(letters[11:20], 1e3, replace = TRUE),
                 segment = sample(1:3, 1e3, replace = TRUE, prob = 1:3))

library(tidyverse)
df %>%
  count(col, row, segment) %>%
  ggplot(aes(x = 1, y = segment, fill = scale(n))) +
  geom_tile() +
  scale_fill_distiller(palette = "RdBu") +
  facet_grid(row~col, switch = "both") +
  scale_y_continuous(expand = c(0,0)) +
  scale_x_continuous(expand = c(0,0)) +
  labs(x = NULL, y = NULL) +
  theme_classic() +
  theme(panel.spacing = unit(0, "line"),
        panel.border = element_rect(fill = NA),
        axis.text = element_blank(),
        axis.ticks = element_blank())

相关问题