Skip to main content
Bioinformatics logoLink to Bioinformatics
. 2017 Nov 24;34(6):1056–1057. doi: 10.1093/bioinformatics/btx740

SPECTRE: a suite of phylogenetic tools for reticulate evolution

Sarah Bastkowski 1,✉,1, Daniel Mapleson 1,1, Andreas Spillner 2, Taoyang Wu 3, Monika Balvočiūtė 4, Vincent Moulton 3
Editor: Alfonso Valencia
PMCID: PMC5860355  PMID: 29186450

Abstract

Summary

Split-networks are a generalization of phylogenetic trees that have proven to be a powerful tool in phylogenetics. Various ways have been developed for computing such networks, including split-decomposition, NeighborNet, QNet and FlatNJ. Some of these approaches are implemented in the user-friendly SplitsTree software package. However, to give the user the option to adjust and extend these approaches and to facilitate their integration into analysis pipelines, there is a need for robust, open-source implementations of associated data structures and algorithms. Here, we present SPECTRE, a readily available, open-source library of data structures written in Java, that comes complete with new implementations of several pre-published algorithms and a basic interactive graphical interface for visualizing planar split networks. SPECTRE also supports the use of longer running algorithms by providing command line interfaces, which can be executed on servers or in High Performance Computing environments.

Availability and implementation

Full source code is available under the GPLv3 license at: https://github.com/maplesond/SPECTRE. SPECTRE’s core library is available from Maven Central at: https://mvnrepository.com/artifact/uk.ac.uea.cmp.spectre/core. Documentation is available at: http://spectre-suite-of-phylogenetic-tools-for-reticulate-evolution.readthedocs.io/en/latest/

Supplementary information

Supplementary data are available at Bioinformatics online.

1 Introduction

Split-networks are a generalization of phylogenetic trees that are commonly used to analyze reticulate evolution in organisms such as plants, bacteria and viruses (see Fig. 1 for an example). They provide a snapshot of the data and can be used to display conflicting signals. Examples of algorithms for computing such networks include split-decomposition (Bandelt and Dress, 1992), Neighbor-Net (Bryant and Moulton, 2004), QNet (Grünewald et al., 2007), SuperQ (Grünewald et al., 2013) and FlatNJ (Balvočiūtė et al., 2014). A comprehensive overview of split-networks can be found in (Huson and Bryant, 2006). Currently, the main program available for computing split-networks is the user-friendly SplitsTree program (Huson and Bryant, 2006). In addition, various methods for computing split-networks such as some of those mentioned above have been implemented and released as stand alone applications. Implementing data structures capable of representing the mathematical structures used to describe and compute split networks is not a trivial undertaking and existing software either is closed source or have their data structures and algorithms tightly integrated with their host tool, so are not easily reusable. There are, therefore, currently few options for developers wishing to create or extend their own tools based on these concepts other than to start from scratch. Hence, there is a need for a robust and flexible open-source library that provides core data structures and algorithms to facilitate development of new tools.

Fig. 1.

Fig. 1

To illustrate some of SPECTREs functionality, we processed a dataset analyzed in (Bollyky et al., 1996) consisting of different Hepatitis B viruses (HBV). There are five different genomic groups and the phylogenetic analysis led to the result that HBVDNA is a recombinant with around half the genome coming from group A and half from group D. It also concluded that HPBADW1 is a recombinant of HPBADW2 (B) and HPBADWZCG (A), but with only a small insertion from HPBADWZCG into the Genome. (a) A minimum evolution tree constructed by NetME that is compatible with the split network constructed by NeighborNet, which is shown in (b). (c) The split network constructed by FlatNJ

2 SPECTRE

Here, we present SPECTRE, a suite of tools for computing, modelling and visualizing reticulate evolution based on split-networks. SPECTRE builds in part on existing open-source implementations of some of these tools, in particular for QNet, SuperQ and FlatNJ, integrating them into a unified and extendible library. The main tools available through SPECTRE are summarized below (for more details see Section 1 of Supplementary Material):

These tools are accessible to the user via graphical and command line interfaces. Apart from driving the tools, the interactive graphical interface can visualize planar split networks using the drawing algorithm in (Spillner et al., 2012). The interface offers a number of basic functions for orientating the canvas (e.g. zoom, pan, flip and rotate), manipulating labels (size, color, location) and creating image files (PDF, EPS, SVG, PNG). The command line implementation enables bioinformaticians to integrate tools into pipelines. This works on desktop PCs, like SplitsTree, but is also designed so long running tools are executable on servers or high performance computing environments where displays are not available. For developers wishing to reuse code and develop their own tools, SPECTRE provides a core library containing common data structures (e.g. splits, trees, networks, distances, quartets and multiple sequence alignments), algorithms (e.g. NeighborNet) and robust file parsers to process a range of input files (e.g. NEXUS, PHYLIP, Newick, Emboss, FastA); see Section 2 of Supplementary Material for more details. The library is available directly from Maven Central, giving developers direct access to the most recent version of the library and and providing a convenient way to integrate it into the processes for building their own projects.

3 Concluding remarks

SPECTRE provides a collection of open-source tools and resources for modelling, understanding and visualizing reticulate evolution based on split networks. We believe that our software will both enable bioinformaticians to easily test and compare methods for inferring planar split networks and help computer scientists build their own methods for inferring phylogenetic networks by reusing our existing data structures and algorithms via the open-source library. Moreover, this also provides the option to easily add such new tools to the library making them readily available to other users.

Supplementary Material

Supplementary Data

Acknowledgement

The authors would like to thank Stephan Grünewald.

Conflict of Interest: none declared.

References

  1. Balvočiūtė M. et al. (2014) FlatNJ: a novel network-based approach to visualize evolutionary and biogeographical relationships. Syst. Biol., 63, 383–396. [DOI] [PubMed] [Google Scholar]
  2. Bandelt H.-J., Dress A. (1992) Split decomposition: a new and useful approach to phylogenetic analysis of distance data. Mol. Phylogenet. Evol., 1, 242–252. [DOI] [PubMed] [Google Scholar]
  3. Bastkowski S. et al. (2014) Fishing for minimum evolution trees with NeighborNets. Inform. Process. Lett., 114, 13–18. [Google Scholar]
  4. Bollyky P.L. et al. (1996) Recombination between sequences of hepatitis B virus from different genotypes. J. Mol. Evol., 42, 97–102. [DOI] [PubMed] [Google Scholar]
  5. Bryant D., Moulton V. (2004) Neighbor-Net: an agglomerative method for the construction of phylogenetic networks. Mol. Biol. Evol., 21, 255–265. [DOI] [PubMed] [Google Scholar]
  6. Grünewald S. et al. (2007) QNet: an agglomerative method for the construction of phylogenetic networks from weighted quartets. Mol. Biol. Evol., 24, 532–538. [DOI] [PubMed] [Google Scholar]
  7. Grünewald S. et al. (2013) SuperQ: computing supernetworks from quartets. IEEE/ACM Trans. Comput. Biol. Bioinform., 10, 151–160. [DOI] [PubMed] [Google Scholar]
  8. Huson D., Bryant D. (2006) Application of phylogenetic networks in evolutionary studies. Mol. Biol. Evol., 23, 254–267. [DOI] [PubMed] [Google Scholar]
  9. Levy A., Pachter L. (2011) The Neighbor-Net algorithm. Adv. Appl. Math., 47, 240–258. [Google Scholar]
  10. Spillner A. et al. (2012) Constructing and drawing regular planar split networks. IEEE/ACM Trans. Comput. Biol. Bioinform., 9, 395–407. [DOI] [PubMed] [Google Scholar]

Associated Data

This section collects any data citations, data availability statements, or supplementary materials included in this article.

Supplementary Materials

Supplementary Data

Articles from Bioinformatics are provided here courtesy of Oxford University Press

RESOURCES