在2年之前我写过一篇教程介绍MUMmer软件的使用方法,可以通过如何使用MUMmer比对大片段序列阅读。
MUMmer作为一个比对工具,它的主要功能就是寻找两个序列的相似之处,至于如何展示结果,并不是它的主要目标。这篇文章将会介绍如何基于MUMMER的输出结果进行可视化。
首先是下载数据,我们用细菌的基因组作为案例
1 | wget http://mummer.sourceforge.net/examples/data/H_pylori26695_Eslice.fasta |
然后使用nucmer
进行比对
1 | nucmer H_pylori26695_Eslice.fasta H_pyloriJ99_Eslice.fasta |
只保留1对1的最佳联配
1 | delta-filter -1 out.delta > filter.delta |
输出容易展示的信息
1 | show-coords -T -q -H filter.delta > coord.txt |
上面这几个程序的参数需要根据具体需求进行修改,并不是固定用法
后续就是在R语言里面继续绘图。 先加载数据并根据数据格式命名列
1 | df <- read.table("~/coord.txt", sep = "\t") |
获取x和y轴的范围
1 | x_range <- range(c(df$ref_start, df$ref_end)) |
新建一个画图设备,并设置好画图区域
1 |
|
之后逐行绘制每个联配结果,用不同的颜色来展示倒置的情况
1 | for( i in 1:nrow(df)){ |
最后加上x轴和y轴的标签
1 | box() |
结果如下
上面这种作图方式就是R语言的基础作图模式,从绘图思想上叫做画笔模式,这区别于ggplot2所代表的图形语法。