2015-02-24 92 views
0

我試圖在R中顯示彼此相鄰的熱圖,但是失敗。 什麼我做的是:如何在R中的一個窗口中繪製多個熱圖R

library(gplots) 
xPos11<-read.table("dataset1.txt") 
xPos2<-read.table("dataset2.txt") 
xPos3<-read.table("dataset3.txt") 
xPos4<-read.table("dataset4.txt") 
colorMin = 0 
colorMax = 5 
pdf("Region3.heatmap.pdf") 
par(mfrow=c(4,4)) 
heatmap.2(as.matrix( xPos1 ), Rowv=FALSE, Colv=FALSE, dendrogram="none", key=TRUE, density.info="none", trace="none", breaks=seq(colorMin, colorMax, length.out=101)) 
heatmap.2(as.matrix( xPos2), Rowv=FALSE, Colv=FALSE, dendrogram="none", key=TRUE, density.info="none", trace="none", breaks=seq(colorMin, colorMax, length.out=101)) 
heatmap.2(as.matrix( xPos3), Rowv=FALSE, Colv=FALSE, dendrogram="none", key=TRUE, density.info="none", trace="none", breaks=seq(colorMin, colorMax, length.out=101)) 
heatmap.2(as.matrix( xPos4 ), Rowv=FALSE, Colv=FALSE, dendrogram="none", key=TRUE, density.info="none", trace="none", breaks=seq(colorMin, colorMax, length.out=101)) 
dev.off() 

現在正在發生的事情是不是得到一個PDF頁面的所有4個熱圖旁邊echother我得到4頁的PDF與他們每個人一個熱圖。

有人能幫助我調整了代碼來獲得熱圖的期望結構面板R.

謝謝

+1

以下鏈接可以幫助:http://stackoverflow.com/questions/13081310/combining-multiple-complex-plots-as-panels-in-a-single-figure – 2015-02-24 19:45:39

+0

'熱圖''和'heatmap.2'似乎並不尊重'mfrow'或'layout'。另一種選擇是使用'圖像'功能繪製熱點圖,並使用'mfrow'或'layout'將它們放置在多面板圖中。參見[這裏](https://www.biostars.org/p/86379/)。 – eipi10 2015-02-24 20:00:55

回答

0

您可以繪製熱圖到單獨的文件,然後用「蒙太奇」將它們組合從ImageMagick的命令:

m <- matrix(runif(10^2), ncol=10) 
for (i1 in 1:4) { 
    ifile <- paste0(i1,'_heatmap.pdf') 
    pdf(ifile) 
    heatmap(m) 
    d <- dev.off() 
} 
system('montage -geometry 100% -tile 2x2 ./*_heatmap.pdf outfile.pdf') 
相關問題