The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Bio::Phylo::Unparsers::Newick - Serializer used by Bio::Phylo::IO, no serviceable parts inside

DESCRIPTION

This module turns a tree object into a newick formatted (parenthetical) tree description. It is called by the Bio::Phylo::IO facade, don't call it directly. You can pass the following additional arguments to the unparse call:

        # by default, names for tips are derived from $node->get_name, if 
        # 'internal' is specified, uses $node->get_internal_name, if 'taxon'
        # uses $node->get_taxon->get_name, if 'taxon_internal' uses 
        # $node->get_taxon->get_internal_name, if $key, uses $node->get_generic($key)
        -tipnames => one of (internal|taxon|taxon_internal|$key)
        
        # for things like a translate table in nexus, or to specify truncated
        # 10-character names, you can pass a translate mapping as a hashref.
        # to generate the translated names, the strings obtained following the
        # -tipnames rules are used.
        -translate => { Homo_sapiens => 1, Pan_paniscus => 2 }  
        
        # array ref used to specify keys, which are embedded as key/value pairs (where
        # the value is obtained from $node->get_generic($key)) in comments, 
        # formatted depending on '-nhxstyle', which could be 'nhx' (default), i.e.
        # [&&NHX:$key1=$value1:$key2=$value2] or 'mesquite', i.e. 
        # [% $key1 = $value1, $key2 = $value2 ]
        -nhxkeys => [ $key1, $key2 ]    
        
        # if set, appends labels to internal nodes (names obtained from the same
        # source as specified by '-tipnames')
        -nodelabels => 1
        
        # specifies a formatting style / dialect
        -nhxstyle => one of (mesquite|nhx)
        
        # specifies a branch length sprintf number formatting template, default is %f
        -blformat => '%e'

INHERITED METHODS

Bio::Phylo::Unparsers::Newick inherits from one or more superclasses. This means that objects of class Bio::Phylo::Unparsers::Newick also "do" the methods from the superclasses in addition to the ones implemented in this class. Below is the documentation for those additional methods, organized by superclass.

SUPERCLASS Bio::Phylo::IO

Bio::Phylo::Unparsers::Newick inherits from superclass Bio::Phylo::IO. Below are the public methods (if any) from this superclass.

parse()

Parses a file or string.

 Type    : Class method
 Title   : parse
 Usage   : my $obj = Bio::Phylo::IO->parse(%options);
 Function: Creates (file) handle, 
           instantiates appropriate parser.
 Returns : A Bio::Phylo::* object
 Args    : -file    => (path),
            or
           -string  => (scalar),
           -format  => (description format),
           -(other) => (parser specific options)
 Comments: The parse method makes assumptions about 
           the capabilities of Bio::Phylo::Parsers::* 
           modules: i) their names match those of the
           -format => (blah) arguments, insofar that 
           ucfirst(blah) . '.pm' is an existing module; 
           ii) the modules implement a _from_handle, 
           or a _from_string method. Exceptions are 
           thrown if either assumption is violated. 
           
           If @ARGV contains even key/value pairs such
           as "format newick file <filename>" (note: no
           dashes) these will be prepended to @_, for
           one-liners.          
unparse()

Unparses object(s) to a string.

 Type    : Class method
 Title   : unparse
 Usage   : my $string = Bio::Phylo::IO->unparse(
               %options
           );
 Function: Turns Bio::Phylo object into a 
           string according to specified format.
 Returns : SCALAR
 Args    : -phylo   => (Bio::Phylo object),
           -format  => (description format),
           -(other) => (parser specific options)

SEE ALSO

Bio::Phylo::IO

The newick unparser is called by the Bio::Phylo::IO object. Look there to learn how to unparse newick strings.

Bio::Phylo::Manual

Also see the manual: Bio::Phylo::Manual and http://rutgervos.blogspot.com.

REVISION

 $Id: Newick.pm 843 2009-03-04 23:50:27Z rvos $