IGV(Integrative Genomics Viewer)是一个非常方便的比对软件,在使用前只需要将参考基因组和bam文件分别建立索引(即建立fai和bai文件)并载入,就可以对转录组测序数据进行可视化浏览。对比samtools tview功能,这个软件有交互式操作界面,对萌新非常友好。
1. IGV软件下载
直接上百度搜就能找到IGV官网,选择linux版本或者windows版本都行,这里用linux版本为例,IGV只支持JAVA11版本,不用担心这个问题,下载的安装包里直接有JAVA11,解压就可以用,就是国外网站下载有点慢(科学上网)。
直接在虚拟机里解压打开,运行igv.sh,会自动准备好JAVA11的运行环境,成功弹出交互式界面(终于告别了黑漆漆的命令行 )。
2. 导入文件
Genomes菜单栏上传建立索引的参考基因组.fa和.fai文件:
File菜单栏上传排序并建立索引的.bam和.bai文件:
如果有参考基因组注释文件,同样可以导入进去,同样导入前需要sort排序和建立index,可以用菜单栏里的igvtools直接sort和index:
3. 界面解读
我导入了5组bam数据,所有文件导入后可以看到如下界面,简单介绍一下各个区域和功能:
主页面获得的信息有限,我们选取第3条染色体为例,将其放大:
中间的界面可以通过左右拖动鼠标,或者按左右方向键来浏览染色体上的比对情况。我们在搜索框中直接搜基因名字进行染色体定位,比如CIPK家族中的CIPK7基因,回车后双击最后一栏基因注释文件中的基因名称CIPK7,可以得到详细的CIPK7基因信息(这里注意下,如果双击弹出来多个可供选择的片段的话,代表这个基因存在可变剪切):
在基因注释区右键,选择expanded,可以将CIPK7基因的所有转录本显示出来。
放大到一定程度后,我们可以看到基因注释区上方出现了核苷酸序列和氨基酸序列,我们可以点击sequence旁边的箭头,切换到另一条链的序列。
点击核苷酸,会出现三行,分别表示不同起始位点的核苷酸翻译结果,绿色为起始密码子,红色的星号表示终止密码子。
再来看看放大后的tracks区域,bam文件在载入后会默认生成两个tracks,一个显示测序深度(Coverage track,可以对比下samtools depth),一个显示比对情况(Alignment track),我们放大其中一个样本的数据信息。
Coverage track区域灰色代表质量好,如果reads中某核苷酸与参考序列超过20%不一致的时候,IGV会根据四个碱基的计数对coverage的条形图进行着色。这里可以看到该位点处有20个reads覆盖到,8条reads测的是C核苷酸,12条reads测的是T核苷酸。如果某个位置coverage条形图只有一种颜色,即该位点测的核苷酸和参考序列完全不一样,那说明该位点是SNP位点。
Alignment tracks柱形图是和bam文件中的数据一一对应的,举个例子,我在IGV软件的ERR1698206.bam可以看到在第3条染色体位置8173028有3条reads。虚拟机中找到这个bam文件,直接samtools view查看并grep这个位置,可以找到3条定位的reads(还有三条是配对的另一条链)。
如果一条reads中间有缺失,IGV会用黑色横杠表示,中间数字表示缺失几个核苷酸。
IGV还用不同颜色标记异常的插入片段大小的reads,这里做的是RNA-seq数据比对,不用看reads颜色,有些reads还在质控的时候被裁短了,变成蓝色很正常(因为比预期短,个人理解是这样,有待考证?)。以下是官网的默认着色方案: