開源基因組瀏覽器JBrowse教程系列第二篇:使用擬南芥基因組演示怎麼配置JBrowse

開源基因組瀏覽器JBrowse教程系列第二篇:使用擬南芥基因組演示怎麼配置JBrowse

系統:Arch Linux
JBrowse版本:1.12.1shell

假設JBrowse安裝目錄爲:/www/jb
假設下載保存路徑爲:/pub1/dl
假設JBrowse安裝的服務器爲:http://localhost:3003數據庫

本文是開源基因組瀏覽器JBrowse教程系列的第二篇,還沒有部署好JBrowse的同窗請移步第一篇安裝篇json

所謂基因組瀏覽器就是經過這個工具查看基因組,具體包括參考基因組序列,哪一個地方是外顯子、那個地方是內含子等等功能。參考基因組就是一個fasta文件,哪一個地方是外顯子、哪一個地方是內含子這些信息稱之爲特徵,通常狀況下NCBI、ENSEMBL等數據庫都會提供GFF3格式的基因組特徵文件,關於GFF3格式的說明請參考個人另一篇文章GFF3格式說明瀏覽器

如下以擬南芥爲例演示怎麼使用JBrowse。服務器

第一步:準備數據

擬南芥的基因組下載地址
基因組特徵GFF3下載地址ide

下載擬南芥基因組:工具

$ wget ftp://ftp.ensemblgenomes.org/pub/release-36/plants/fasta/arabidopsis_thaliana/dna/Arabidopsis_thaliana.TAIR10.dna.toplevel.fa.gz

下載擬南芥基因組特徵文件:url

$ wget ftp://ftp.ensemblgenomes.org/pub/release-36/plants/gff3/arabidopsis_thaliana/Arabidopsis_thaliana.TAIR10.36.abinitio.gff3.gz

解壓:命令行

$ gzip -d Arabidopsis_thaliana.TAIR10.dna.toplevel.fa.gz
$ gzip -d Arabidopsis_thaliana.TAIR10.36.abinitio.gff3.gz

第二步:格式化參考基因組

JBrowse安裝目錄下的bin目錄提供了不少方便使用的perl腳本,例如:3d

$ cd /www/jb
$ ls bin
add-bam-track.pl  add-json.pl        bam-to-json.pl    cpanm                   flatfile-to-json.pl  jbdoc         maker2jbrowse  prepare-refseqs.pl  ucsc-to-json.pl                                               
add-bw-track.pl   add-track-json.pl  biodb-to-json.pl  draw-basepair-track.pl  generate-names.pl    json2conf.pl  new-plugin.pl  remove-track.pl     wig-to-json.pl

其中bin/prepare-refseqs.pl是用來格式化參考基因組序列的。

使用方法爲:

$ prepare-refseqs.pl --fasta <file1>

即:

$ bin/prepare-refseqs.pl --fasta /pub1/dl/Arabidopsis_thaliana.TAIR10.dna.toplevel.fa

這時你看一下data目錄,發現目錄下多了一些文件:

$ tree -L 2 data
data                                                
├── seq                                             
│   ├── 1ad                                         
│   ├── 536                                         
│   ├── 6dd                                         
│   ├── 83d                                         
│   ├── 84b                                         
│   ├── ac0                                         
│   ├── f3b                                         
│   └── refSeqs.json                                
├── trackList.json                                  
└── tracks.conf

其中seq目錄下的1ad、536等等目錄都是存放格式化好的參考基因組文件的。

第三步:格式化特徵文件

格式化特徵文件須要用到bin/flatfile-to-json.pl這個腳本,使用方式爲:

$ bin/flatfile-to-json.pl (--gff <GFF3 file> | --bed <BED file> | --gbk <GenBank file>) --trackLabel <track identifier>

也就是說你這個特徵文件能夠是GFF三、BED、GBK三種中的一種(熟悉Linux命令行的同窗應該可以很輕易地看懂這個說明),另外必須提供trackLabel這個參數,來指定這個track的ID,這個參數會做爲名字顯示在基因組瀏覽器的左側的tracks那一列。

即:

$ bin/flatfile-to-json.pl --gff /pub/dl/Arabidopsis_thaliana.TAIR10.36.abinitio.gff3 --trackLabel 'GFF3 Annotations'

運行完畢,再打開data/trackList.json你就會發現多了一些東西:

{                                                   
   "tracks" : [                                     
      {                                             
         "seqType" : "dna",                         
         "key" : "Reference sequence",              
         "storeClass" : "JBrowse/Store/Sequence/StaticChunked",                                          
         "chunkSize" : 20000,                       
         "urlTemplate" : "seq/{refseq_dirpath}/{refseq}-",                                               
         "label" : "DNA",                           
         "type" : "SequenceTrack",                  
         "category" : "Reference sequence"          
      },                                            
      {                                             
         "style" : {                                
            "className" : "feature"                 
         },                                         
         "key" : "GFF3 Annotations",                
         "storeClass" : "JBrowse/Store/SeqFeature/NCList",                                               
         "trackType" : null,                        
         "urlTemplate" : "tracks/GFF3 Annotations/{refseq}/trackData.json",                              
         "compress" : 0,                            
         "type" : "FeatureTrack",                   
         "label" : "GFF3 Annotations"               
      }                                             
   ],                                               
   "formatVersion" : 1                              
}

這個文件是當前的全部的track,以JSON文件存儲,其實就是一個文本而已,不過這個文本對程序是友好的,仔細閱讀你就會發現有兩個track,再看看不就是我剛剛格式化的參考基因組和特徵文件嘛!

這個時候通常你打開瀏覽器輸入http://localhost:3003就能夠訪問了,可是有一個隱患。JBrowse默認是支持多個基因組的,並且默認bin目錄下的各類腳本的輸出路徑都是data目錄,那若是我下次又想弄一個基因組,通過上面兩步也放到了data目錄,那豈不是很混亂?JBrowse已經爲咱們想好了解決方案,你只須要把如今的data目錄改一下名字就好了:

$ mv data Arabidopsis_thaliana

下次再把另一個基因組放進來時,bin目錄下的腳本又會默認放到data目錄,就不會發生混亂啦!

這時你訪問http://localhost:3003就會發現這是一個錯誤頁,由於http://localhost:3003不加參數的話默認就是訪問data目錄的數據,如今你把data目錄重命名固然不存在啦。如今想訪問剛剛的擬南芥數據能夠給這個URL加上get參數,即:http://localhost:3003/?data=Arabidopsis_thaliana,也就是把data=後面的字符換成剛剛修改後的文件夾的名字。

另外,若是你把JBrowse部署在內網,卻想讓外網訪問到,而部署JBrowse的服務器又在防火牆後面的話,請必定要記得把jbrowse.conf加入到防火牆白名單,由於防火牆默認會把這種.conf結尾的文件屏蔽。

相關文章
相關標籤/搜索