gggenes包绘制基因结构图 – 王进的个人网站

您所在的位置:网站首页 hiv基因组结构图 gggenes包绘制基因结构图 – 王进的个人网站

gggenes包绘制基因结构图 – 王进的个人网站

2024-07-10 18:01| 来源: 网络整理| 查看: 265

https://wilkox.org/gggenes/

gggenes是ggplot2的扩展包,用于绘制基因结构图、多物种基因比较图的很好玩的工具。

安装

一种是安装稳定版本的gggene。

install.packages("gggenes")

另一种是从github上安装开发版。

devtools::install_github("wilkox/gggenes")

下面是用的数据内容如下:

https://www.sci666.com.cn/wp-content/uploads/2020/02/wxsync-2020-02-ff9035b4eb752a39df15bbddedf35e1b.png

example_genes包括118行和6个变量。每一行代表一个基因或一个区域;列分别是:

molecule:基因组名字gene: 基因名字 the name of the genestart: 基因在基因组开始位置 (如果在负链,注意起始位置的写法跟bed文件不同了)end: 基因结束位置 (负链的基因起始位置绝对值大于结束位置)strand: 基因属于哪条链 (可选)

如果想显示基因的子区域,如外显子、或翻译为特定功能域的区域等。

https://www.sci666.com.cn/wp-content/uploads/2020/02/wxsync-2020-02-afe22e9b79b121d017e32b899cd010e6.png

example_subgenes多了三列信息:

subgeme: 子片段名字from: 子片段开始位置to: 子片段结束位置

用geom_gene_arrow()画基因箭头

geom_gene_arrow()是一个ggplot2几何性状,它用箭头表示基因。基因在分子内的起始和结束位置分别映射到xmin和xmax。这些开始和结束位置用于确定箭头指向的方向。基因组信息molecule映射到y轴。如果绘制的基因来自不同基因组的位置的数值相差很大,一般指定scale =“free”来调整横轴的坐标展示,以避免部分数字太大压缩了小基因组的基因的展示。

library(ggplot2) library(gggenes) ggplot(example_genes, aes(xmin = start, xmax = end, y = molecule, fill = gene)) +geom_gene_arrow() + facet_wrap(~ molecule, scales = "free", ncol = 1) + scale_fill_brewer(palette = "Set3") https://www.sci666.com.cn/wp-content/uploads/2020/02/wxsync-2020-02-eddf19b525d16a424256fd5fc77d0f12.png

用theme_genes美化图形

由于生成的图可能看起来很混乱,因此ggplot2主题theme_genes提供了一些合理的缺省值美化结果。

ggplot(example_genes, aes(xmin = start, xmax = end, y = molecule, fill = gene)) + geom_gene_arrow() + facet_wrap(~ molecule, scales = "free", ncol = 1) + scale_fill_brewer(palette = "Set3") + theme_genes() https://www.sci666.com.cn/wp-content/uploads/2020/02/wxsync-2020-02-ab16a6a4df4abb3943f39c55adb7b6f2.png

使用make_alignment_dummies()跨面对齐基因

通常我们会想要所有物种按某一个指定的基因对齐,比如下面例子中的geneE。make_alignment_dummies()会根据给定的数据和待对齐的基因,生成一组空基因;再使用geom_blank()将这些空基因添加到绘图中,就可以填充两侧的空白,以在图上直观地对齐所选的基因。

dummies


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3