Our goal was to explore a way to draw big trees and still have the ability to zoom and scroll at interactive speeds. The viewer automatically collapses and expands nodes based on the available screen space. As you zoom in, collapsed nodes will expand to show its children. The application also has an overview window to show the location of the current view in the larger tree. You can quickly jump to specific clades by clicking on internal nodes in the main or overview window.
The preview of the web-based implementation, working name phyloviewer, is here. A description of the web application can be found here and the database schema here. Phyloviewer has three libraries that can be used with other applications:
- phyloviewer-common (doc)
- phyloviewer-gwt-client (doc)
Download the source code at github
The initial prototype is a standalone version written in cross-platform C++ and OpenGL. See more details here. Note that this version is no longer being actively developed, but the Java implementation can be run standalone.