from ete_dev import Phyloxml, phyloxml import random project = Phyloxml() # Creates a random tree phylo = phyloxml.PhyloxmlTree() phylo.populate(5, random_branches=True) phylo.phyloxml_phylogeny.set_name("test_tree") # Add the tree to the phyloxml project project.add_phylogeny(phylo) print project.get_phylogeny()[0] # /-iajom # /---| # | \-wiszh #----| # | /-xrygw # \---| # | /-gjlwx # \---| # \-ijvnk # Trees can be operated as normal ETE trees phylo.show() # Export the project as phyloXML format project.export() # <phy:Phyloxml xmlns:phy="http://www.phyloxml.org/1.10/phyloxml.xsd">
from ete_dev import Phyloxml project = Phyloxml() project.build_from_file("apaf.xml") # Each tree contains the same methods as a PhyloTree object for tree in project.get_phylogeny(): print tree # you can even use rendering options tree.show() # PhyloXML features are stored in the phyloxml_clade attribute for node in tree: print "Node name:", node.name for seq in node.phyloxml_clade.get_sequence(): for domain in seq.domain_architecture.get_domain(): domain_data = [domain.valueOf_, domain.get_from(), domain.get_to()] print " Domain:", '\t'.join(map(str, domain_data))
from ete_dev import Phyloxml, phyloxml import random project = Phyloxml() # Creates a random tree phylo = phyloxml.PhyloxmlTree() phylo.populate(5, random_branches=True) phylo.phyloxml_phylogeny.set_name("test_tree") # Add the tree to the phyloxml project project.add_phylogeny(phylo) print project.get_phylogeny()[0] # /-iajom # /---| # | \-wiszh #----| # | /-xrygw # \---| # | /-gjlwx # \---| # \-ijvnk # Trees can be operated as normal ETE trees phylo.show() # Export the project as phyloXML format project.export() # <phy:Phyloxml xmlns:phy="http://www.phyloxml.org/1.10/phyloxml.xsd"> # <phy:phylogeny>