系統樹ファイルを表示するためにbiopython1.72を使用しています。
-
関数
'Phylo.draw(pars_tree、branch_labels = lambda c:c.branch_length ) '
ツリーに枝の長さも表示するには、ツリーは枝の長さを10進数以降のすべての数値を含むものとして表示します。数値を小数点以下2桁に切り捨てたいのですが、以下は、"必要な数値"
の小数点以下の桁数まで切り捨てるPythonメソッドです。def truncate(n、decimals = 0):乗数= 10 **小数はint(n *乗数)/乗数切り捨て(12.567、2)を返します#function12.56を使用します#Outputブランチの長さに対してbiopythonでそのようなメソッドを使用できますか?
-
'Phylo.draw'
関数は、非常に狭いウィンドウを開きます。ツリーファイルが大きいと、すべてのブランチがオーバーラップし、書き込まれた内容が読みにくくなります。誰かがより良い表示方法を知っていますか? ol>
以下はサンプルコードです、私は使用しています:
from Bio import PhylofromBio。 Phylo.TreeConstruction import * from Bio import AlignIOaln = AlignIO.read(open( 'example.phy')、 'phylip')calculator = DistanceCalculator()dm = calculator.get_distance(aln)constructor = DistanceTreeConstructor()njtree =コンストラクター.nj (dm)starting_tree = njtreescorer = ParsimonyScorer()searcher = NNITreeSearcher(scorer)constructor = ParsimonyTreeConstructor(searcher、starting_tree)pars_tree =コンストラクター.build_tree(aln)Phylo.draw(pars_tree、branch_labels = lambda c:c.branch_length)
入力としてmsaファイルがあり、次のようなツリーが表示されます。
_______ Human _______ | | | _______チンパンジー_______ | | | _______ 犬
_______ | | _______ | | | | _______牛_______ | | | | | _______________________象_______ | | | | | _______________________________マウス| | _______ | | _______________________________________カモノハシ| | | | _______________________________________ Anole_lizard | | _______ | ______ | | _______________________________チキン| | | _______ | | | | _______________________________ Zebra_finch | | | | _______________________________________________________アフリカツメガエル_ | | _______________________________________________________ゼブラフィッシュ| ______ | | | _______________________________________________________フグ| | ______________________________________________________________ナメクジウオ