首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R pheatmap比例与pheatmap之前的比例不同

R pheatmap比例与pheatmap之前的比例不同
EN

Stack Overflow用户
提问于 2019-06-04 23:54:35
回答 1查看 3.1K关注 0票数 0

打印前缩放时的热图:

代码语言:javascript
复制
mat_scaled <- scale(t(mat))
pheatmap(t(mat_scaled), show_rownames=F, show_colnames=F,
         border_color=F, color=colorRampPalette(brewer.pal(6,name="PuOr"))(12))

从-2开始缩放时,6与在pheatmap函数中使用缩放时完全不同

代码语言:javascript
复制
pheatmap(t(mat_scaled), scale="row", show_rownames=F, 
         show_colnames=F, border_color=F, color=colorRampPalette(brewer.pal(6,name="PuOr"))(12))

其中比例设置为-6,6。

为什么会有这种差异,以及如何获得第二张图中表示的矩阵?

EN

回答 1

Stack Overflow用户

发布于 2019-09-01 21:40:38

在第二张图中,您绘制了缩放矩阵mat_scaled的热图,该矩阵使用选项scale="row" of pheatmap进行了第二次缩放。

这不是比较外部和内部扩展的正确方法。

以下是解决方案:

代码语言:javascript
复制
library(gridExtra)
library(pheatmap)
library(RColorBrewer)
cols <- colorRampPalette(brewer.pal(6,name="PuOr"))(12)
brks <- seq(-3,3,length.out=12)  
data(attitude)
mat <- as.matrix(attitude)

# Scale by row
mat_scaled <- t(scale(t(mat)))

p1 <- pheatmap(mat_scaled, show_rownames=F, show_colnames=F, 
         breaks=brks, border_color=F, color=cols)

p2 <- pheatmap(mat, scale="row", show_rownames=F, show_colnames=F, 
         breaks=brks, border_color=F, color=cols)

grid.arrange(grobs=list(p1$gtable, p2$gtable))

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

https://stackoverflow.com/questions/56447392

复制
相关文章

相似问题

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