我在两个不同的csv文件中有两个矩阵,我想用相同的色标绘制它们。
这是我现在所拥有的,但它不起作用:

正如您所看到的,这两个图像使用相同的颜色范围(从蓝色到红色),但它们的含义不同:它们具有不同的间隔。
我希望在两个热图中将相同的颜色关联到相同的值范围。
下面是我的热图代码:
library(pheatmap)
datatable_normal = data.matrix(read.table(fileName, sep="\t", header=T, row.names=1))
pheatmap(datatable_normal, cluster_rows=FALSE, cluster_cols=FALSE, show_rownames=T, width=10, height=10)我该如何解决这个问题?
发布于 2016-10-25 16:35:24
您可以通过提供相同的breaks来设置相同的比例。
下面是我的例子:
library(pheatmap)
## example data
set.seed(1); test1 <- matrix(rnorm(25, 0, 10), 5, 5)
set.seed(2); test2 <- matrix(rnorm(25, 30, 10), 5, 5)
colnames(test1) = paste0("Test", 1:5); rownames(test1) = paste0("Gene", 1:5)
colnames(test2) = paste0("Test", 1:5); rownames(test2) = paste0("Gene", 1:5)
## make breaks from combined range
Breaks <- seq(min(c(test1, test2)), max(c(test1, test2)), length = 100)
## draw
pheatmap(test1, breaks = Breaks, cluster_rows=FALSE, cluster_cols=FALSE)
pheatmap(test2, breaks = Breaks, cluster_rows=FALSE, cluster_cols=FALSE)


https://stackoverflow.com/questions/40226268
复制相似问题