macでインフォマティクス

macでインフォマティクス

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

遺伝子クラスターを比較してインタラクティブな図で視覚化する clinker(clustermap.js含む)

2020 11/8 誤字修正

2020 11/10 preprint引用追加

2020 12/15 追記

2021 1/19 論文引用

2021/11/8 ヘルプ更新

 

 生物学的パスウェイに関与する遺伝子は、多くの場合、遺伝子クラスターに集まっており、それらを比較することで、その機能や進化の歴史についての貴重な洞察を得ることができる。しかし、遺伝子クラスターの相同性の比較と可視化は、特に多くのクラスターを比較する場合には面倒な作業である。ここでは、Pythonベースのツールであるclinkerと、それに付随するJavaScriptビジュアライゼーションライブラリであるclustermap.jsを紹介する。これらのツールを併用することで、配列ファイルから直接、正確でインタラクティブな出版品質の遺伝子クラスタ比較図を自動的に生成することができる。clinkerとclustermap.jsのソースコードとドキュメントはGitHub (github.com/gamcil/clinkerとgithub.com/gamcil/clustermap.js)でMITライセンスのもとに公開されている。

 

タイトルの通りのツール。簡単に導入でき、ハイクオリティなシンテニー解析図を出力できる。

2021 1/19

2020 12/15

2020 11/27

 11/5

 

 

インストール

condaでpython3.8の環境を作って導入、テストした(conda create -n clinker python=3.8 && conda activate clinker)。

Github

pip install clinker

> clinker -h

# clinker -h

usage: clinker [-h] [--version] [-r RANGES [RANGES ...]] [-gf GENE_FUNCTIONS] [-na] [-i IDENTITY] [-j JOBS] [-s SESSION] [-ji JSON_INDENT] [-f] [-o OUTPUT] [-p [PLOT]] [-dl DELIMITER] [-dc DECIMALS] [-hl]

               [-ha] [-mo MATRIX_OUT] [-ufo]

               [files ...]

 

clinker: Automatic creation of publication-ready gene cluster comparison figures.

 

clinker generates gene cluster comparison figures from GenBank files. It performs pairwise local or global alignments between every sequence in every unique pair of clusters and generates interactive, to-scale comparison figures using the clustermap.js library.

 

optional arguments:

  -h, --help            show this help message and exit

  --version             show program's version number and exit

 

Input options:

  files                 Gene cluster GenBank files

  -r RANGES [RANGES ...], --ranges RANGES [RANGES ...]

                        Scaffold extraction ranges. If a range is specified, only features within the range will be extracted from the scaffold. Ranges should be formatted like: scaffold:start-end (e.g.

                        scaffold_1:15000-40000)

  -gf GENE_FUNCTIONS, --gene_functions GENE_FUNCTIONS

                        2-column CSV file containing gene functions, used to build gene groups from same function instead of sequence similarity (e.g. GENE_001,PKS-NRPS).

 

Alignment options:

  -na, --no_align       Do not align clusters

  -i IDENTITY, --identity IDENTITY

                        Minimum alignment sequence identity [default: 0.3]

  -j JOBS, --jobs JOBS  Number of alignments to run in parallel (0 to use the number of CPUs) [default: 0]

 

Output options:

  -s SESSION, --session SESSION

                        Path to clinker session

  -ji JSON_INDENT, --json_indent JSON_INDENT

                        Number of spaces to indent JSON [default: none]

  -f, --force           Overwrite previous output file

  -o OUTPUT, --output OUTPUT

                        Save alignments to file

  -p [PLOT], --plot [PLOT]

                        Plot cluster alignments using clustermap.js. If a path is given, clinker will generate a portable HTML file at that path. Otherwise, the plot will be served dynamically using Python's

                        HTTP server.

  -dl DELIMITER, --delimiter DELIMITER

                        Character to delimit output by [default: human readable]

  -dc DECIMALS, --decimals DECIMALS

                        Number of decimal places in output [default: 2]

  -hl, --hide_link_headers

                        Hide alignment column headers

  -ha, --hide_aln_headers

                        Hide alignment cluster name headers

  -mo MATRIX_OUT, --matrix_out MATRIX_OUT

                        Save cluster similarity matrix to file

 

Visualisation options:

  -ufo, --use_file_order

                        Display clusters in order of input files

 

Example usage

-------------

Align clusters, plot results and print scores to screen:

  $ clinker files/*.gbk

 

Only save gene-gene links when identity is over 50%:

  $ clinker files/*.gbk -i 0.5

 

Save an alignment session for later:

  $ clinker files/*.gbk -s session.json

 

Save alignments to file, in comma-delimited format, with 4 decimal places:

  $ clinker files/*.gbk -o alignments.csv -dl "," -dc 4

 

Generate visualisation:

  $ clinker files/*.gbk -p

 

Save visualisation as a static HTML document:

  $ clinker files/*.gbk -p plot.html

 

Cameron Gilchrist, 2020

 

 

テストラン

5つの小さなgenbankファイルを比較する。

f:id:kazumaxneo:20201108002408p:plain

git clone https://github.com/gamcil/clinker.git
cd clinker/examples/
#defaultブラウザに出力(.gbkや.gbffを入力)
clinker *gbk -p

#またはファイルに保存
clinker *gbk -p out.html

#GFFファイル
clinker *gff -p out.html
  •  -p    Plot cluster alignments using clustermap.js. If a path is given, clinker will generate a portable HTML file at that path. Otherwise, the plot will be served
    dynamically using Python's HTTP server.

f:id:kazumaxneo:20201108002138p:plain

配列比較はコード領域のタンパク質間で行われる。遺伝子間領域は対象ではない。

 

操作方法は右端に表示される。

f:id:kazumaxneo:20201108002253p:plain



画面をドラッグして図をスクロールできる。また、マウスホイール/trackpadで拡大縮小できる。

f:id:kazumaxneo:20201108002833p:plain

 

all versus allで比較するため、ドラッグする事でゲノムの上下位置を自由に入れ替えできる(defaut表示はクラスタリング済み)。

f:id:kazumaxneo:20201108003037p:plain

 

ORFをクリックする事でそのORFの位置が整列される(アラインされる)。

f:id:kazumaxneo:20201108003251p:plain

黄色の長いORFをクリックしてこのORFが整列されるようにした。

 

ORF名をクリックするとリネームできる。

f:id:kazumaxneo:20201108003448p:plain

 

表示パラメータは右下のウィンドウで変更可能。

Show gene labels: ON

vertical spacing: 100

Align labels: OFF

Label rotation (degrees): 45

f:id:kazumaxneo:20201108003840p:plain

 

他にも同名のツールがあるので注意して下さい。

引用

2020 11/10追加

clinker & clustermap.js: Automatic generation of gene cluster comparison figures

Cameron Laurence Mathison Gilchrist, Yit-Heng Heng Chooi

bioRxiv, posted November 09, 2020

 

Clinker & clustermap.js: Automatic generation of gene cluster comparison figures
Cameron L M Gilchrist, Yit-Heng Chooi
Bioinformatics, Published: 18 January 2021

 

関連

 

 

このツールはPhilipp Bayerさんのツイートで知りました。Thank you so much !