PHY·FI: fast and easy online creation and manipulation of phylogeny color figures
© Fredslund; licensee BioMed Central Ltd. 2006
Received: 20 April 2006
Accepted: 22 June 2006
Published: 22 June 2006
The need to depict a phylogeny, or some other kind of abstract tree, is very frequently experienced by researchers from a broad range of biological and computational disciplines. Thousands of papers and talks include phylogeny figures, and often during everyday work, one would like to quickly get a graphical display of, e.g., the phylogenetic relationship between a set of sequences as calculated by an alignment program such as ClustalW or the phylogenetic package Phylip. A wealth of software tools capable of tree drawing exists; most are comprehensive packages that also perform various types of analysis, and hence they are available only for download and installing. Some online tools exist, too.
This paper presents an online tool, PHY·FI, which encompasses all the qualities of existing online programs and adds functionality to hopefully eliminate the need for post-processing the phylogeny figure in some other general-purpose graphics program. PHY·FI is versatile, easy-to-use and fast, and supports comprehensive graphical control, several download image formats, and the possibility of dynamically collapsing groups of nodes into named subtrees (e.g. "Primates"). The user can create a color figure from any phylogeny, or other kind of tree, represented in the widely used parenthesized Newick format.
PHY·FI is fast and easy to use, yet still offers full color control, tree manipulation, and several image formats. It does not require any downloading and installing, and thus any internet user regardless of computer skills, and computer platform, can benefit from it. PHY·FI is free for all and is available from this web address: http://cgi-www.daimi.au.dk/cgi-chili/phyfi/go
Many researchers from a wide range of biological and computational disciplines have a recurrent need for depicting trees of various forms, e.g. phylogenies. Often, the tree is represented as a text string or file in the parenthesized Newick format. This is true for phylogenies produced by software such as the Phylip package  or ClustalW . For example, when performing a multiple alignment of sequences with ClustalW, apart from the alignment itself a dendrogram file is produced with extension .dnd, and this file contains a Newick representation of the phylogeny inferred from aligning the sequences.
From the rather incomprehensible textual description of a Newick tree, humans can learn little about the overall tree structure or of the relationship between particular nodes:
(Bovine:0.69395,(Gibbon:0.36079, (Orangutan:0.33636,(Gorilla:0.17147, (Chimpanzee:0.19268,Human:0.11927):0.08386):0.06124):0.15057):0.54939,Mouse:1.2146);
Hence, for full comprehension of the tree structure, researchers will need a graphical image of the tree to benefit from the information it encodes. This paper presents PHY·FI, a new tool for drawing such Newick trees. The strengths of PHY·FI are these:
It is web based; i.e., no need to download and install anything. It works from any computer connected to the internet, and the user has the tree in seconds, displayed in the browser.
The tree can be manipulated directly in the browser: Nodes (subtrees) can be collapsed and expanded.
The image can be downloaded in the most common formats. (By request, new formats can easily be added).
The user-interface is self-explanatory.
The user has full color control over nodes, labels, etc.
Several other graphical parameters can be modified by the user.
The user can redraw the image and immediately observe the changes after tuning the parameters.
There is a wealth of existing software programs which can draw phylogenies. Some of these programs are full phylogenetic inference packages which include the facility to draw trees, while others are developed specifically for tree drawing. Before going into depth with PHY·FI, I will give a brief overview.
Most existing programs are for download and local installation only. Some are very elaborate and allow user post-processing through interaction and reshaping of the tree via mouse clicks in the produced image; others are more straight-forward and have fewer degrees of freedom. Sophisticated programs for download and local installation include TREEGRAPH , Bosque , ATV , TREEVIEW , NJplot , MEGA , Mesquite , Phylodraw , TreeIllustrator  and the commercial programs Paup , MacClade  and TreeMe . Arbor 3D  and Walrus  are tools for visualizing and interacting with trees in three dimensions. A simpler program, also for download, is DrawTree  by T. Mailund.
The elaborate program TreeWiz  can handle huge trees with up to 50,000 leaves and lets the user explore such trees by collapsing and expanding nodes interactively. There is an online version, too (which has not been maintained and currently seems not to be functional, but the author offers to update it upon demand): In order to explore one's own trees rather than the given example trees, one must give read access to one's home directory to the program Java applet (in general, this would constitute a somewhat liberal security policy) and create a new directory with a specific name which must hold the trees.
It is also possible to create phylogeny figures from within several programming environments such as the statistical computing programming language R , the text processing system LaTeX through G. Savva's Newick tree package , and BioPerl using the cladogram drawing module developed by G. Valiente .
For all of the above, one needs to at least do some downloading and installing – and in many cases one needs to write computer code – to draw a phylogeny. A few programs, however, do have a web interface and are as such directly comparable to PHY·FI. Phylodendron by D. G. Gilbert  presents the user with several choices of tree style and appearance as well as different formats for the output image. Not all combinations of parameter settings seem to be fully implemented, though. The images are in black and white and have no branch length labels (only a rule).
V. Veeramachaneni has written a program with the name TreeDraw . It presents a simple user interface, although one needs to manually type in a color encoding if one wants the leaves in the tree to be colored. The program can produce images in the PS, PDF and PNG formats, but again branch lengths have to be judged by visual inspection with the help of a ruler. The user has no control over the image size and cannot paste a Newick string directly on the web page.
J. Felsenstein's Phylip software  also includes the web tool Drawtree . This program lets the user draw black and white images of trees in the PS format and numerous other printer-friendly formats; however, branch length labels seemingly cannot be added to the trees, and the resulting tree image is not immediately shown but has to be downloaded and viewed with some other appropriate application.
T-Rex  is an elaborate analysis program which offers sophisticated functionality in terms of, e.g., tree inference. When it comes to displaying trees, it offers several different graphical tree shapes, it allows limited control over the coloring of labels and branches (colors are chosen from a fixed list), and per default it cleverly scales the image to fit the browser window. However, the user cannot upload a Newick tree file but has to paste the string in a text field directly (which is less than optimal for large trees); there is no control over font or font size; branches seem to be drawn with the same length even though in the Newick string, all nodes must have given (not necessarily identical) lengths in order for the parser to work; and finally, not all correctly formatted Newick strings seem to pass the parser.
Lastly, PhyloView  is a web based visualization tool which can illustrate the potential differences between the deduced phylogeny of a protein sequence alignment and the taxonomic relationship of the species of the sequences. The user uploads a Newick tree and can then decide any taxonomic partition for the species and choose a coloring. Thus, the aim of the program is not merely displaying Newick trees, and therefore no further control over the tree image is possible.
Thus, if the image is initially not quite satisfactory, e.g. if some of the node labels appear too close to one another, or if some part of the tree is irrelevant for the user's specific purpose, or if the colors are not quite right, the user simply performs a few modifications by tuning parameters and collapsing nodes, and then clicks the "redraw" button. [See Additional file 1 for more technical details]. After drawing the tree with the desired download format selected, the user clicks the 'download' button to download the image to his/her own computer.
Results and discussion
PHY·FI has been extensively tested on Windows, Linux, and Mac platforms using Firefox 1.0, Internet Explorer 6.0, Netscape 7.1, Mozilla 1.7.12, and Safari 2.0.3. Trees with up to 3600 nodes were uploaded (for a tree of this size, the image is produced within about 13 seconds). Very large trees yield very large images initially, but the assumption is that the user in such cases intends to collapse parts of the tree in order to get an apprehensible figure out of it. To be able to pinpoint and click specific nodes to collapse them, the user needs to be able to read the labels, and so rather than use some smaller default image height, I have chosen to let the initial height be proportional to the number of leaves in the tree (within a limit of 20,000 pixels, corresponding to an image file size of about 1 Megabyte). The user can always decrease (or increase) the image height and width if (s)he wishes, for instance after creating more empty space by collapsing the irrelevant parts of the tree. Thus, a satisfactory result should always be reachable. Hopefully, the collapse/expand feature may, in conjunction with the regular graphical parameters, relieve the user of any need for post-processing of the image in some other general graphics application.
From the PHY·FI homepage, there is a direct hyperlink to a page describing the Newick standard  which the parser expects the input string to follow. According to this standard, internal nodes can be named. Instead of providing string names for (internal) nodes, the user may of course put bootstrap values. PHY·FI does not distinguish between node names and bootstrap values; both are written next to the relevant node in the same color. Thus, to avoid confusion, users should probably not upload input strings in which some nodes have bootstrap values and others have labels.
Several programs, e.g. [22, 26], offer various tree drawing styles, such as cladograms and radial trees, rather than just one. PHY·FI only displays trees in one style (phylograms). In the next version, I plan to include several others depending on users' wishes.
PHY·FI is purely a visualization tool. It has no tree inference capabilities; the user must obtain the Newick string from somewhere else. With this tool I aim to provide other researchers with the possibility of obtaining a readable, aesthetically pleasing and customized tree image in the graphics format of their own choice, all in the matter of seconds or minutes. No download instructions or technical documentation pages stand between the user and the desired phylogeny figure; no extra plug-ins need be installed. The program is meant to be self-explanatory, yet still it presents enough control and interaction to meet most needs. Thus, PHY·FI is very well suited for quickly making a tree figure for, e.g., a paper, a presentation or teaching.
Availability and requirements
Project name: PHY·FI
Project home page: http://cgi-www.daimi.au.dk/cgi-chili/phyfi/go
Operating systems: Platform independent.
Programming language: Python
License: PHY·FI is free to all users. Please cite this paper when using images produced by PHY·FI in other publications.
formats mentioned in the text
Portable Document Format
Portable Network Graphics
Tagged Image File
Graphic Interchange Format
This work is funded by a grant from the Danish Research Council for Technology and Production. I would like to thank my anonymous reviewers for their constructive comments on this and an earlier version of the paper, and the editor for the extra literature and reference suggestions.
- Felsenstein J: PHYLIP – Phylogeny Inference Package (Version 3.2). Cladistics 1989, 5: 164–166.Google Scholar
- Chenna R, Sugawara H, Koike T, Lopez R, Gibson TJ, Higgins DG, Thompson JD: Multiple sequence alignment with the Clustal series of programs. Nucleic Acids Res 2003, 31(13):3497–500. PubMedID: 12824352 PubMedID: 12824352 10.1093/nar/gkg500PubMed CentralView ArticlePubMedGoogle Scholar
- Müller J, Müller K: TREEGRAPH: automated drawing of complex tree figures using an extensible tree description format. Molecular Ecology Notes 2004, 4: 786–788. 10.1111/j.1471-8286.2004.00813.xView ArticleGoogle Scholar
- Zmasek CM, Eddy SR: ATV: display and manipulation of annotated phylogenetic trees:. Bioinformatics 2001, 17: 383–384. 10.1093/bioinformatics/17.4.383View ArticlePubMedGoogle Scholar
- Page RDM: TREEVIEW: An application to display phylogenetic trees on personal computers. Computer Applications in the Biosciences 1996, 12: 357–358.PubMedGoogle Scholar
- Perrière G, Gouy M: WWW-Query: An on-line retrieval system for biological sequence banks. Biochimie 1996, 78: 364–369. 10.1016/0300-9084(96)84768-7View ArticlePubMedGoogle Scholar
- Kumar S, Tamura K, Nei M: MEGA 3: Integrated Software for Molecular Evolutionary Genetics Analysis and Sequence Alignment. Briefings in Bioinformatics 2004, 5: 150–163. [http://www.megasoftware.net/] 10.1093/bib/5.2.150View ArticlePubMedGoogle Scholar
- Maddison WP, Maddison DR: Mesquite: a modular system for evolutionary analysis.[http://mesquiteproject.org]
- Trooskens G, De Beule D, Decouttere F, Van Criekinge W: Phylogenetic trees: visualizing, customizing and detecting incongruence. Bioinformatics 2005, 21(19):3801–3802. Epub 2005 Jul 19. Epub 2005 Jul 19. 10.1093/bioinformatics/bti590View ArticlePubMedGoogle Scholar
- Maddison WP, Maddison DR: McClade: Analysis of Phylogeny and Character Evolution, Version 3.0. Sunderland, MA, Sinauer Associates; 1992.Google Scholar
- Ruths DA, Chen ES, Ellis L: Arbor 3D: an interactive environment for examining phylogenetic and taxonomic trees in multiple dimensions. Bioinformatics 2000, 16(11):1003–1009. 10.1093/bioinformatics/16.11.1003View ArticlePubMedGoogle Scholar
- Hughes T, Hyun Y, Liberles DA: Visualising very large phylogenetic trees in three dimensional hyperbolic space. BMC Bioinformatics 2004, 5: 48. 10.1186/1471-2105-5-48PubMed CentralView ArticlePubMedGoogle Scholar
- Rost U, Bauer-Bornberg E: Treewiz: interactive exploration of huge trees. Bioinformatics 2002, 18(1):109–114. [http://projects.villa-bosch.de/bcb/software/software/Ulla/TreeWiz/] 10.1093/bioinformatics/18.1.109View ArticlePubMedGoogle Scholar
- Ihaka R, Gentleman R: R: A language for data analysis and graphics. Journal of Computational and Graphical Statistics 1996, 5(3):299–314. [http://www.r-project.org/] 10.2307/1390807Google Scholar
- Savva G, Conn J, Dicks J: Drawing phylogenetic trees in LaTeX and Word. Bioinformatics 2004, 20(14):2322–2323. [http://cbr.jic.ac.uk/dicks/software/newicktree/index.html] 10.1093/bioinformatics/bth228View ArticlePubMedGoogle Scholar
- Cladogram drawing module for BioPerl[http://doc.bioperl.org/releases/bioperl-current/bioperl-live/Bio/Tree/Draw/Cladogram.html]
- Phylip's Drawtree[http://bioweb.pasteur.fr/seqanal/interfaces/drawtree.html]
- Makarenkov V: T-REX: reconstructing and visualizing phylogenetic trees and reticulation networks.[http://www.trex.uqam.ca/]Bioinformatics 2001, 17: 664–668. http://www.info2.uqam.ca/~makarenv/trex.html 10.1093/bioinformatics/17.7.664View ArticlePubMedGoogle Scholar
- Palidwor G, Reynaud EG, Andrade-Navarro MA: Taxonomic colouring of phylogenetic trees of protein sequences. BMC Bioinformatics. 2006, 7: 79.Google Scholar
- The Newick format definition[http://evolution.genetics.washington.edu/phylip/newicktree.html]
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.