更改多个注释中的颜色

时间:2018-02-08 06:23:58

标签: r pheatmap

我想更改热图的多个注释的颜色。示例代码:

#test data
test = matrix(rnorm(200), 20, 10)
test[1:10, seq(1, 10, 2)] = test[1:10, seq(1, 10, 2)] + 3
test[11:20, seq(2, 10, 2)] = test[11:20, seq(2, 10, 2)] + 2
test[15:20, seq(2, 10, 2)] = test[15:20, seq(2, 10, 2)] + 4
colnames(test) = paste("Test", 1:10, sep = "")
rownames(test) = paste("Gene", 1:20, sep = "")
#plot
annotation <- data.frame(Var1 = factor(1:10 %% 2 == 0, labels = c("Exp1", "None")), Var1 = factor(1:10 %% 2 == 0, labels = c("Exp1", "None")))
rownames(annotation) <- colnames(test) # check out the row names of annotation
pheatmap(test, annotation = annotation)

enter image description here

预期结果为None类别中的白色和Exp1Exp2类别中的黑色。

1 个答案:

答案 0 :(得分:3)

指定annotation_colors

# Specify colors
annotation_colors = list(
  Var1 = c(Exp1="black", None="white"),
  Var1.1 = c(Exp1="black", None="white"))
pheatmap(test, annotation = annotation, annotation_colors = annotation_colors)
相关问题