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 $