我筹划了近10年的书,终于出中文版了!
非常高兴《R实战:系统发育树的数据集成操作及可视化》这本书终于和大家见面了。
这本书可以说孕育了很长的时间,起始于2014年,我刚进入香港大学新发传染性疾病国家重点实验室读博士,这对于我来说是一个全新的领域,由此也接触并学习了系统发育的相关知识。为自己和实验室的师兄师姐写了一些脚本来处理系统发育相关的数据。在这个过程中,我发现大家都在用Adobe Illustrator这些软件对系统发育树进行后期的注释(标注上节点或边的相关信息)和美化,这是一个极其消耗时间的过程,并且容易出错,更重要的一点是即使投入了几天时间,这些工作只是机械式的重复,并不能转化为生产力。每一次撰写论文的时候,都需要同样地进行这样的机械式重复性操作。
经过了调研之后,我发现可视化软件都是为画树而生,如果有软件能够集成数据,那基本上是针对特定的领域所开发的,只能整合单一类型的数据,并没有一款软件能够支持通用的数据集成操作与可视化。而且系统发育软件的输出多数是非标准化的格式,这进一步加剧了混乱的局面,限制了下游的整合与比较分析。随着各种高通量实验技术的发展,来自于实验、临床、流行病学的数据快速增长。如何有效地利用各种异质性的数据?如何以演化的角度来整合、解析这些数据?对学科的发展有着重要的意义!
于是我就开始在酝酿要写一个通用的可视化软件
它即能够允许支持数据集成与操作
又能够将不同来源的数据进行整合与比较
我思考着如何以高度的抽象来总结概括这些异质性数据的共同特征?
以什么样的数据结构来存储这些信息,使之后续的开发变得更容易?
以及如何呈现给用户的操作与可视化能够更加符合直觉,减少学习成本?
经过一段时间的思考之后,ggtree的原型在我脑海中可以说是呼之欲出,于是我很快就把它实现出来,第一个版本的ggtree已经是支持图形语法进行图层的叠加、支持外部数据的整合、能够解析整合大量的软件输出,而实际写代码开发,只用了不到一个月的时间。ggtree一经发布,就受到了广泛的关注,我心中时常有个疑问,我是一个闯入这个学科的新人,为什么是我这样的新人来做这个事情?
熟悉我的人都知道,我开发的软件都是长时间维护的,ggtree从2014年12月开始,到现在也接近10年了,我们的维护更新,从来没有间断过。这期间也得到了许多的认可,包括发表了Methods in Ecology and Evolution (2017)、Molecular Biology and Evolution (2018, 2020, 2021)、Current Protocols in Bioinformatics (2020)、iMeta (2022)等几篇论文,2017年被邀请去Field Museum作报告,受到William Pearson邀请撰写protocol文章,入选MEE期刊创刊十周年的十篇代表作等。
长时间的维护还包括解答用户问题和维护更新文档,随着这个过程的积累,我把文档以书的形式组织起来,放在网上分享,后来CRC出版社的David Grubbs博士联系了我,最终促起了这本书英文版的出版,然后电子工业出版社的张慧敏编辑联系我,希望能够照顾到更多的中文读者,因此有了这次的中文版本。
ggtree一直处于比较活跃的开发状态,在开发的过程中也孕育了不少R包,包括ggtree本身被拆分为tidytree(将树和相关数据以表格形式呈现,以tidyverse的方式进行操作)、treeio(用于树和相关数据的输入输出,解析大量异质性数据,统一下游分析输入)和ggtree(专注于数据的可视化),支持使用图片注释树的功能分离出来形成了ggimage,应用于拼复合图的功能形成了aplot,以及我们从ggtree衍生开发出来的用于高维度数据整合可视化的ggtreeExtra(徐双斌开发)、用于可视化层次聚类结构的ggtreeDendro、用于呈现形态学空间的ggtreeSpace(李林开发)、用于探索分子发育树时间信号的shinyTempSignal(罗晓等开发)。当前还开发衔接Bioconductor的SummarizedExperiment类(诸如SingleCellExperiemnt这些都是它的子类),使我们在呈现层次关系的时候,能够同时将基因信息或样本信息一起呈现。相信我们团队在未来,将会基于树和数据集成开发出更多的工具,满足更多的应用场景,也相信ggtree系列包将来能够在组学数据上得以广泛应用。
ggtree以可视化著称,它完全兼容ggplot2的图形语法,所以只要有ggplot2的基础,学习成本很低,这本书也能够加强你对ggplot2的理解和使用。ggtree的可视化功能,不仅仅是对数据进行可视化呈现,更重要的是它给了你通过图形进行数据探索的能力,而这一点再怎么强调都不为过,正如著名统计学家 John Tukey 说的:“图形的最大价值就是使我们注意始料未及的信息”(The greatest value of a picture is when it forces us to notice what we never expected to see)。
这本书,不仅仅是可视化,它还包括基本概念的解析、数据的集成操作等等,从这本书里,不单单可以看到我们对数据可视化的理解,也能够学习到我们对数据的理解和思考,相信读者能够从中得到一些收获。
新书首发福利
公众号粉丝扫下方二维码
五折下单~