有一些类似的问题,但他们并没有问我在寻找什么。 我有一个带有多个独立变量的基因表达数据。我想使用R中的热图将其可视化。我无法在热图上包含所有三个变量。以下是示例代码:
species <- rep(c("st", "rt"), each = 18)
life <- rep(c("5d", "15d", "45d"), 2, each = 6)
concentration <- rep(c("c1", "c2", "c3"), 6, each = 2)
gene <- rep(c("gene1", "gene2"), 36, each = 1)
response <- runif(36, -4, 4)
data1 <- data.frame(species, life, concentration, gene, response)
我愿意使用任何套餐。请参见下图来自不同数据集的图像。我希望以类似的方式可视化我的数据。
非常感谢提前!
答案 0 :(得分:0)
我不确定代码中的哪些变量与图表中的哪个维度相对应,但使用ggplot2
包时,它很容易实现:
library(ggplot2)
ggplot(data1, aes(x = factor(life, levels = c("5d", "15d", "45d")),
y = concentration,
fill = response)) +
geom_tile() +
facet_wrap(~species + gene, nrow = 1) +
scale_fill_gradient(low = "red", high = "green", guide = FALSE) +
scale_x_discrete(name = "life")
当然,您可以相应地调整标题,标签,颜色等。