在R中并排显示两个pdf的热图

Ank*_*ari 5 pdf png r heatmap

我试图以相同的png或pdf并排显示两个或更多热图。在这种情况下,布局或mfcol不起作用。有人可以帮我这个忙。

bap*_*ste 5

这是使用最近推出的 gridGraphics 包的一个选项,

在此输入图像描述

library(gridGraphics)
library(grid)
heatmap(as.matrix(mtcars))

library(gridGraphics)
grab_grob <- function(){
  grid.echo()
  grid.grab()
}

g <- grab_grob()
grid.newpage()

# library(gridExtra)
# grid.arrange(g,g, ncol=2, clip=TRUE)

lay <- grid.layout(nrow = 1, ncol=2)
pushViewport(viewport(layout = lay))
grid.draw(editGrob(g, vp=viewport(layout.pos.row = 1, 
                                  layout.pos.col = 1, clip=TRUE)))
grid.draw(editGrob(g, vp=viewport(layout.pos.row = 1, 
                                  layout.pos.col = 2, clip=TRUE)))
upViewport(1)
Run Code Online (Sandbox Code Playgroud)


Wei*_*Wei 4

正如heatmap.2的帮助文档中所述,

'heatmap.2()' 使用 'layout' 并在 2x2 布局的右下角绘制 'image'。因此,它不能用于多列/行布局,即当调用“par(mfrow= *)”或“(mfcol= *)”时。

热图也是如此。