热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

宏基因组学经典文献重现(一):利用ggplot2进行散点图可视化分析

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

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



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





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




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





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



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

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

library(tidyverse)

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

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

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

(p % 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, "

ggsave(p,file="QH.D240.depth.GeneNum1.pdf",
in")



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





  • panel.background( ) 将四周边框加宽

  • plot.margin( ) 控制图像四周边距 (上,右,下,左)

  • annotate( ) 添加R值与P值

  • margin=margin(t=5) 控制标签与文本之间的距离

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


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





推荐阅读
  • 探讨 jBPM 数据库表结构设计的精要与实践
    探讨 jBPM 数据库表结构设计的精要与实践 ... [详细]
  • 表面缺陷检测数据集综述及GitHub开源项目推荐
    本文综述了表面缺陷检测领域的数据集,并推荐了多个GitHub上的开源项目。通过对现有文献和数据集的系统整理,为研究人员提供了全面的资源参考,有助于推动该领域的发展和技术进步。 ... [详细]
  • 使用React与Ant Design 3.x构建IP地址输入组件
    本文深入探讨了利用React框架结合Ant Design 3.x版本开发IP地址输入组件的方法。通过详细的代码示例,展示了如何高效地创建具备良好用户体验的IP输入框,对于前端开发者而言具有较高的实践指导意义。 ... [详细]
  • 2019年后蚂蚁集团与拼多多面试经验详述与深度剖析
    2019年后蚂蚁集团与拼多多面试经验详述与深度剖析 ... [详细]
  • 本文深入探讨了 HTML 中的 `margin` 属性,详细解析了其基本特性和应用场景。文章不仅介绍了 `margin` 的基本概念,还重点讨论了垂直外边距合并现象,并分析了 `margin` 在块级元素与内联元素中的不同表现。通过实例和代码示例,帮助读者全面理解 `margin` 的使用技巧和常见问题。 ... [详细]
  • 技术日志:深入探讨Spark Streaming与Spark SQL的融合应用
    技术日志:深入探讨Spark Streaming与Spark SQL的融合应用 ... [详细]
  • 在单个图表中实现饼图与条形图的精准对齐 ... [详细]
  • 如何在Android应用中设计和实现专业的启动欢迎界面(Splash Screen)
    在Android应用开发中,设计与实现一个专业的启动欢迎界面(Splash Screen)至关重要。尽管Android设计指南对使用Splash Screen的态度存在争议,但一个精心设计的启动界面不仅能提升用户体验,还能增强品牌识别度。本文将探讨如何在遵循最佳实践的同时,通过技术手段实现既美观又高效的启动欢迎界面,包括加载动画、过渡效果以及性能优化等方面。 ... [详细]
  • 深入RTOS实践,面对原子操作提问竟感困惑
    在实时操作系统(RTOS)的实践中,尽管已经积累了丰富的经验,但在面对原子操作的具体问题时,仍感到困惑。本文将深入探讨RTOS中的原子操作机制,分析其在多任务环境下的重要性和实现方式,并结合实际案例解析常见的问题及解决方案,帮助读者更好地理解和应用这一关键技术。 ... [详细]
  • 本文深入探讨了 C# 中 `SqlCommand` 和 `SqlDataAdapter` 的核心差异及其应用场景。`SqlCommand` 主要用于执行单一的 SQL 命令,并通过 `DataReader` 获取结果,具有较高的执行效率,但灵活性较低。相比之下,`SqlDataAdapter` 则适用于复杂的数据操作,通过 `DataSet` 提供了更多的数据处理功能,如数据填充、更新和批量操作,更适合需要频繁数据交互的场景。 ... [详细]
  • 在第七天的深度学习课程中,我们将重点探讨DGL框架的高级应用,特别是在官方文档指导下进行数据集的下载与预处理。通过详细的步骤说明和实用技巧,帮助读者高效地构建和优化图神经网络的数据管道。此外,我们还将介绍如何利用DGL提供的模块化工具,实现数据的快速加载和预处理,以提升模型训练的效率和准确性。 ... [详细]
  • 在Java应用中实现只读模式的切换方法与技巧 ... [详细]
  • 使用PyQt5与OpenCV实现电脑摄像头的图像捕捉功能
    本文介绍了如何使用Python中的PyQt5和OpenCV库来实现电脑摄像头的图像捕捉功能。通过结合这两个强大的工具,用户可以轻松地打开摄像头并进行实时图像采集和处理。代码示例展示了如何初始化摄像头、捕获图像并将其显示在PyQt5的图形界面中。此外,还提供了详细的步骤说明和代码注释,帮助开发者快速上手并实现相关功能。 ... [详细]
  • Python 并发编程进阶:从初学者到高手的进程与模块开发指南
    Python 并发编程进阶:从初学者到高手的进程与模块开发指南 ... [详细]
  • HTML5 Web存储技术是许多开发者青睐本地应用程序的重要原因之一,因为它能够实现在客户端本地存储数据。HTML5通过引入Web Storage API,使得Web应用程序能够在浏览器中高效地存储数据,从而提升了应用的性能和用户体验。相较于传统的Cookie机制,Web Storage不仅提供了更大的存储容量,还简化了数据管理和访问的方式。本文将从基础概念、关键技术到实际应用,全面解析HTML5 Web存储技术,帮助读者深入了解其工作原理和应用场景。 ... [详细]
author-avatar
chroalist
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有