其他
DNA序列重组可视化方法
这是高老师文章里的图,每一个小图都是通过比较两条比对序列差异而做出来的,从图A和B中可以看出,CF_YL21有可能是Mont和Oz两条序列重组而来。高老师自己做出这图后,深知手工统计序列差异、画图、拼图之困难。问我有没有办法读两条序列,生成一个图。
很多东西都没有现成的,需要自己造轮子,于是我写了个R包来做这个事情:
library(ggmsa)
fas = list.files(system.file("extdata","GVariation", package="ggmsa"),
pattern="fas", full.names=TRUE)
x = seqdiff(fas[1])
plot(x)
一行代码读文件,然后plot画出来,就是这么简单。
这里有三个文件,我们可以三个文件一起读,三个图一起画。
x = lapply(fas, seqdiff)
plts = lapply(x, plot)
然后可以很容易把三张图拼在一起
aplot::plot_list(gglist=plts, ncol=1, tag_levels='A')
简直完美,跟文章中的图一毛一样。
这个功能写于2016年,在我的博士论文中,我也使用了这个包画了一些图。本来放在 seqcombo
包中,由于我们写了一个ggmsa的包,《关于多序列比对可视化,我们做了一个包》,正好都是输入都是多序列比对的,于是把这个功能放入了ggmsa包中,将在seqcombo后续的版本中移除。
往期精彩