Cargando…
phylotree.js - a JavaScript library for application development and interactive data visualization in phylogenetics
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, e...
Autores principales: | , , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
BioMed Central
2018
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6060545/ https://www.ncbi.nlm.nih.gov/pubmed/30045713 http://dx.doi.org/10.1186/s12859-018-2283-2 |
_version_ | 1783342054671122432 |
---|---|
author | Shank, Stephen D. Weaver, Steven Kosakovsky Pond, Sergei L. |
author_facet | Shank, Stephen D. Weaver, Steven Kosakovsky Pond, Sergei L. |
author_sort | Shank, Stephen D. |
collection | PubMed |
description | 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. ELECTRONIC SUPPLEMENTARY MATERIAL: The online version of this article (10.1186/s12859-018-2283-2) contains supplementary material, which is available to authorized users. |
format | Online Article Text |
id | pubmed-6060545 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2018 |
publisher | BioMed Central |
record_format | MEDLINE/PubMed |
spelling | pubmed-60605452018-07-31 phylotree.js - a JavaScript library for application development and interactive data visualization in phylogenetics Shank, Stephen D. Weaver, Steven Kosakovsky Pond, Sergei L. BMC Bioinformatics Software 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. ELECTRONIC SUPPLEMENTARY MATERIAL: The online version of this article (10.1186/s12859-018-2283-2) contains supplementary material, which is available to authorized users. BioMed Central 2018-07-25 /pmc/articles/PMC6060545/ /pubmed/30045713 http://dx.doi.org/10.1186/s12859-018-2283-2 Text en © The Author(s) 2018 Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made. The Creative Commons Public Domain Dedication waiver (http://creativecommons.org/publicdomain/zero/1.0/) applies to the data made available in this article, unless otherwise stated. |
spellingShingle | Software Shank, Stephen D. Weaver, Steven Kosakovsky Pond, Sergei L. phylotree.js - a JavaScript library for application development and interactive data visualization in phylogenetics |
title | phylotree.js - a JavaScript library for application development and interactive data visualization in phylogenetics |
title_full | phylotree.js - a JavaScript library for application development and interactive data visualization in phylogenetics |
title_fullStr | phylotree.js - a JavaScript library for application development and interactive data visualization in phylogenetics |
title_full_unstemmed | phylotree.js - a JavaScript library for application development and interactive data visualization in phylogenetics |
title_short | phylotree.js - a JavaScript library for application development and interactive data visualization in phylogenetics |
title_sort | phylotree.js - a javascript library for application development and interactive data visualization in phylogenetics |
topic | Software |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6060545/ https://www.ncbi.nlm.nih.gov/pubmed/30045713 http://dx.doi.org/10.1186/s12859-018-2283-2 |
work_keys_str_mv | AT shankstephend phylotreejsajavascriptlibraryforapplicationdevelopmentandinteractivedatavisualizationinphylogenetics AT weaversteven phylotreejsajavascriptlibraryforapplicationdevelopmentandinteractivedatavisualizationinphylogenetics AT kosakovskypondsergeil phylotreejsajavascriptlibraryforapplicationdevelopmentandinteractivedatavisualizationinphylogenetics |