首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >R pheathmap,如何在两个热图图像中设置相同的比例?

R pheathmap,如何在两个热图图像中设置相同的比例?
EN

Stack Overflow用户
提问于 2016-10-25 03:42:17
回答 1查看 1.9K关注 0票数 1

我在两个不同的csv文件中有两个矩阵,我想用相同的色标绘制它们。

这是我现在所拥有的,但它不起作用:

正如您所看到的,这两个图像使用相同的颜色范围(从蓝色到红色),但它们的含义不同:它们具有不同的间隔。

我希望在两个热图中将相同的颜色关联到相同的值范围。

下面是我的热图代码:

代码语言:javascript
复制
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)

我该如何解决这个问题?

EN

回答 1

Stack Overflow用户

发布于 2016-10-25 16:35:24

您可以通过提供相同的breaks来设置相同的比例。

下面是我的例子:

代码语言:javascript
复制
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)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40226268

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档