macでインフォマティクス

macでインフォマティクス

HTS (NGS) 関連のインフォマティクス情報についてまとめています。

IGVのtips その3

 

以前書いたIGVのtipsという記事に時々アクセスがあるようなので、今日は再びゲノムブラウザIGVのtipsの紹介をします。

 

1、JSONファイルでの読み書き

IGVはゲノムファイルやアノテーションをGenomeメニューから読み込むことよりもJSON形式でゲノムを指定する事を推奨しています。以下の形式になります。

https://github.com/igvteam/igv/wiki/JSON-Genome-Format

(manualより転載)

アノテーション、cytobandなどのファイルはホストされているURLまたはローカルマシンのパス(絶対パスまたは相対パス)を指定します。必須プロパティはid、name、fastaURLのみで、あとはオプションです。JSONVScodeなどで見やすく編集できます(VScodeで"command + K" &  M => JSONを選択)。

 

1つIGVで開いてみます。IGVは代表的なゲノムのJSONファイルとアノテーションをホストしているのでこれを使います。

https://github.com/igvteam/igv/wiki/Downloading-Hosted-Genomes-for-Offline-Use

 

小さいSARS-CoV-2を選びました。

wget https://s3.amazonaws.com/igv.org.genomes/ASM985889v3/ASM985889v3.json

> cat ASM985889v3.json

#-g (--genome)でjsonファイルを指定。
igv -g ASM985889v3.json

配列とアノテーションが読み込まれました。自分たちでアセンブルしたゲノムをIGVに読み込む時も、配列とアノテーションのパスを書いたJSONをオフラインで読み込んだり、自前のサーバーに置いて読み込むことができます(公式の解説)。

 

 

2、バッチ処理

IGVは処理内容をテキストに記載することで様々な作業を自動化できます。

バッチコマンド一覧

https://github.com/igvteam/igv/wiki/Batch-commands

 

使うには処理内容をテキストに書き、そのテキストファイルを指定します。6行だけの簡単な処理を書いてみます。

new

genome ./genome.json

load ./sample1.bam,sample2.bam

goto chr:1000-3000

snapshot ./picture1.png

exit

1、newで新しいセッション(IGVが起動する)

2、genomeでgenomeのfastaアノテーションjsonファイルのパスを指定

3、loadでbamファイル2つを指定

4、gotoで指定した染色体の領域に移動

5、snapshotでpicture1.pngとして画像をカレントに保存

6、exitでIGVをシャットダウン(最後にIGVを終了したい時に使用)

  • new      Create a new session. Unloads all tracks except the default genome annotations.
  • genome    selects a genome by id, or loads a genome (or indexed fasta) from the supplied path.
  • load    Loads a data or session file by specifying a full path to a local file or a URL. To explicitly specify a path to an index file use the optional "index=" parameter. For examples load foo.bam index=bar.bai
  • snapshot     Saves a snapshot of the IGV window to an image file. If filename is omitted, writes a PNG file with a filename generated based on the locus. If filename is specified, the filename extension determines the image file format, which must be either .png or .svg.
  • exit        Exit (close) the IGV application.

という流れです。画像フォーマットはPNGSVGを選べます。

 

バッチファイルはTools => Run batch scriptで読み込んで実行するか、

もしくはコマンドラインから実行します。

igv -b igv.batch
  • --batch -b     Path or url to a batch command file

実行すると、IGVが起動して指定したゲノムが読み込まれ、指定した領域にジャンプして画像が保存されてからシャットダウンします。

picture1.png

 

  • 命令を繰り返すことで処理を自動化できる。
  • snapshotでSVG形式の画像を撮れば(イラストレーターなどを使って)余計なフレームを除く編集も簡単に行える。
  • バッチ処理コマンドは細かい操作に対応しているので、細い指示にも対応可能(例えばリードをstrandでソート&カラーリングし、関心のあるバリアント部位の画像を順番に撮る)。

 

関連