Related Experiment Video
Updated: Feb 7, 2026

A Practical Guide to Phylogenetics for Nonexperts
Published on: February 5, 2014
phylotree.js - a JavaScript library for application development and interactive data visualization in phylogenetics
Stephen D Shank1, Steven Weaver2, Sergei L Kosakovsky Pond2
1Department of Biology and Institute for Genomics and Evolutionary Medicine, Temple University, Philadelphia, 19122, USA. sshank@temple.edu.
Background:
While several JavaScript packages for visualizing phylogenetic trees exist, most are best characterized as frameworks that are designed with a specific set of tasks in mind. Extending such packages to use cases that are not available as features often ends up being difficult. Moreover, existing packages tend to produce standalone widgets that are not designed to serve as middleware, as opposed to flexible tools that can integrate with other components of an application.
Results:
phylotree.js is a library that extends the popular data visualization framework d3.js, and is suitable for building JavaScript applications where users can view and interact with phylogenetic trees. The effects of such interactions can be captured and communicated to other package components, making it possible to engineer complex and responsive applications that include phylogenetic trees. phylotree.js implements several abstractions in addition to features, and comes with a documented application programming interface, thus promoting interoperability and extensibility. Example applications include a tool to visualize and annotate phylogenetic trees, a web application for comparative sequence analysis, a structural viewer that interacts with a large phylogenetic tree, and an interactive tanglegram.
Conclusions:
phylotree.js is a useful tool and application module for a variety of computational biology software applications. The code is available on Github and is released under the MIT license.
More Related Videos
Related Concept Videos
Phylogenetic Trees
How Data are Classified: Categorical Data
Data are classified based on whether they are measurable or not. Categorical data cannot be measured; instead, it can be divided into categories. For example, if Y denotes a person's party affiliation, some examples of Y include...
How Data are Classified: Numerical Data
Quantitative data may be either discrete or continuous. All quantitative data that take on only specific numerical...
Sustainable Development
Predator-Prey Interactions
Data Reporting and Recording

