宏基因组经典论文复现(1) ggplot2绘制散点图

之前写了不少微生物多样性的数据可视化案例,但是始终没有与宏基因组接触,如今大势所趋不得不走上这条道路,论文复现也得早日提上日程,今天就让我们开始来复现下述论文中的图

Expanded catalog of microbial genes and metagenome-assembled genomes from the pig gut microbiome

今天先从图a开始,本打算将全部图片代码一起展示,但是的确很耗时遂作罢,值得一提的是本文作者给出了分析过程及绘图代码,真是业界少有的良心,我在作者的基础上进行了某些细节的微调,希望能画出更好的作品

本文数据集:https://github.com/zhouyunyan/PIGC/blob/master/Pre-processed_Files/F6_faeces_301_geneNum.xls

下面开始我们的可视化之旅:

library(tidyverse)

首先通过lm( )计算出R值与P值

data <- read_tsv("F6_faeces_301_geneNum.xls")

lm(formula =data$gene_num ~ data$depth,data=data) %>% summary()
Residuals:
    Min      1Q  Median      3Q     Max 
-202784  -20931    2759   27390  104915 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)    27705      12818   2.161   0.0315 *  
data$depth     18576       1005  18.478   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 43530 on 299 degrees of freedom
Multiple R-squared:  0.5331,    Adjusted R-squared:  0.5316 
F-statistic: 341.4 on 1 and 299 DF,  p-value: < 2.2e-16

此图就是一个常见的散点图+回归曲线,但是下面的代码我对多个细节进行了调整,大家可以仔细查看

(p <- data %>% mutate(gene_num=gene_num/1000) %>% 
  ggplot(aes(depth,gene_num))+
  geom_point()+
  geom_smooth(method = "loess")+
  labs(x="Sequencing depth (Gb)",y="Gene numbers(x 1000)")+
  theme(axis.title.y=element_text(size = 15,color="black",
                                  margin=margin(r=5),face="bold"),
    axis.title.x = element_text(size = 15,color="black",
                                margin=margin(t=5),face="bold"),
    axis.text.y = element_text(size = 12,color="black"),
    axis.text.x = element_text(size = 12,color="black"),
    panel.grid.major = element_blank(), 
    panel.grid.minor = element_blank(),
    panel.background=element_rect(colour="black",size=1,fill="white"),
    plot.margin=unit(c(0.5,0.5,0.5,0.5),units=,"cm"))+
  annotate("text",x=17,y=80,label = "italic(R) ^ 2==0.53",
           parse = TRUE,size=5,colour="black")+
  annotate("text",x=20.5,y=80,size=5,colour="black",
           label = "paste(p, \" < 2.2e^-16\")",parse = TRUE))
ggsave(p,file="QH.D240.depth.GeneNum1.pdf",
       width=6.35,height=5.77,dpi=300,units="in")
  • panel.background( ) 将四周边框加宽
  • plot.margin( ) 控制图像四周边距 (上,右,下,左)
  • annotate( ) 添加R值与P值
  • margin=margin(t=5) 控制标签与文本之间的距离

喜欢的小伙伴欢迎关注我的公众号

R语言数据分析指南,持续分享数据可视化的经典案例及一些生信知识,希望对大家有所帮助

你可能感兴趣的:(宏基因组经典论文复现(1) ggplot2绘制散点图)