我有一組5個區域中具有等位基因頻率的SNP。在ggplot2的一個多部分圖中繪製四個圖
在每個圖上,Y軸是我感興趣的區域中的頻率,X =軸是比較區域中的頻率。我個人情節看起來像這樣(http://imgur.com/a/jncAh)。每個圖都有自己的輸入表。
我基本上想要安排所有四個地塊看起來像這樣(http://www.nature.com/nature/journal/v522/n7555/fig_tab/nature14507_SF2.html)(儘管沒有着色或圖例)。我想知道如何做到這一點。謝謝!
這是我在我的R代碼裏面
list.R<- c("EastAsia", "Europe", "Oceania", "SouthAsia")
for (i in list.R){
read.table(paste(i,"-Levant",".txt",sep=""), header = F) -> tbl
colnames(tbl)<-c("CHR", "SNP", "COORD", "CLST1", "MAF1", "CLST2", "MAF2")
require(ggplot2)
plot <- ggplot(data = tbl,aes(x = MAF1, y = MAF2)) + geom_point(size=1) + geom_abline(intercept = 0, slope = 1) + coord_fixed() +
labs(x = paste("Allele frequency from ",i,sep=""),y = "Allele frequency from the Levant")
ggsave(plot=plot,height=8,width=8, filename=paste(i,"-Levant",".pdf",sep=""), useDingbats=FALSE)
plot(plot)
dev.off()
}
輸入表格看起來像這樣
1 rs16823303 2903159 EastAsia 0.2005 Levant 0.05822
1 rs2742689 2995262 EastAsia 0.04608 Levant 0.1507
1 rs12024620 3049362 EastAsia 0.04839 Levant 0.02055
1 rs12022170 3050221 EastAsia 0.04608 Levant 0.02083
1 rs75872291 3105766 EastAsia 0.125 Levant 0.003425
1 rs16823548 3140812 EastAsia 0.07834 Levant 0.04795
除了磨製(顯而易見的選擇),一些替代選項這裏列出:https://github.com/baptiste/gridextra/wiki/arranging-ggplot#alternative-options – baptiste
你可能想看看ggplot2書 - 有pdf的周圍。它給出了這個例子。 – dash2
要創建一個刻面圖,將您的四個數據幀「堆疊」到一個數據框中,然後可以運行一個'ggplot'命令來創建一個包含四個面板(刻面)的繪圖,每個區域一個繪圖。 – eipi10