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
clinker & clustermap.js finally published in Oxford Bioinformatics 🎉😀 https://t.co/fR8hAsl3B8
— Cameron Gilchrist (@clmgilchrist) 2021年1月19日
2020 12/15
clinker v0.0.10 released: GFF support, parallel alignments, unscaled mode w/ no intergenic gaps, auto-flip loci when anchoring genes, curved links, links as lines + group colouring https://t.co/dMmbFFQUVT pic.twitter.com/QlVK2y4ALM
— Cameron Gilchrist (@clmgilchrist) 2020年12月14日
2020 11/27
Just released clinker 0.0.7, with ability to easily swap/edit gene labels & save/load alignment sessions. Can install via pip https://t.co/JlWcmKWNWq pic.twitter.com/FfBrrZNIYn
— Cameron Gilchrist (@clmgilchrist) 2020年11月26日
11/5
Oh glad you guys discovered the tool and found it could be useful for your work! It's developed by Cam Gilchrist in our lab @SMS_UWA very talented student in bioinformatics. Writing this up atm 🙂. Also checkout https://t.co/QnnVb54M7P by Cam and @BoothThom pic.twitter.com/eYdOxKRREp
— Heng Chooi (@YitHengChooi) 2020年11月4日
インストール
condaでpython3.8の環境を作って導入、テストした(conda create -n clinker python=3.8 && conda activate clinker)。
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ファイルを比較する。
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.
配列比較はコード領域のタンパク質間で行われる。遺伝子間領域は対象ではない。
操作方法は右端に表示される。
画面をドラッグして図をスクロールできる。また、マウスホイール/trackpadで拡大縮小できる。
all versus allで比較するため、ドラッグする事でゲノムの上下位置を自由に入れ替えできる(defaut表示はクラスタリング済み)。
ORFをクリックする事でそのORFの位置が整列される(アラインされる)。
黄色の長いORFをクリックしてこのORFが整列されるようにした。
ORF名をクリックするとリネームできる。
表示パラメータは右下のウィンドウで変更可能。
Show gene labels: ON
vertical spacing: 100
Align labels: OFF
Label rotation (degrees): 45
他にも同名のツールがあるので注意して下さい。
引用
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 !
This looks very useful - clinker, Gene cluster comparison figure generator.
— Philipp Bayer (@PhilippBayer) 2020年11月4日
Takes a bunch of GeneBank files, aligns them globally, sorts input by similarity, and makes a pretty figure of gene content, order and orientation!https://t.co/aaASBAMKPF pic.twitter.com/oZwBPEeRZj