Cargando…

plotnineSeqSuite: a Python package for visualizing sequence data using ggplot2 style

BACKGROUND: The visual sequence logo has been a hot area in the development of bioinformatics tools. ggseqlogo written in R language has been the most popular API since it was published. With the popularity of artificial intelligence and deep learning, Python is currently the most popular programmin...

Descripción completa

Detalles Bibliográficos
Autores principales: Cao, Tianze, Li, Qian, Huang, Yuexia, Li, Anshui
Formato: Online Artículo Texto
Lenguaje:English
Publicado: BioMed Central 2023
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10546746/
https://www.ncbi.nlm.nih.gov/pubmed/37789265
http://dx.doi.org/10.1186/s12864-023-09677-8
_version_ 1785114925017858048
author Cao, Tianze
Li, Qian
Huang, Yuexia
Li, Anshui
author_facet Cao, Tianze
Li, Qian
Huang, Yuexia
Li, Anshui
author_sort Cao, Tianze
collection PubMed
description BACKGROUND: The visual sequence logo has been a hot area in the development of bioinformatics tools. ggseqlogo written in R language has been the most popular API since it was published. With the popularity of artificial intelligence and deep learning, Python is currently the most popular programming language. The programming language used by bioinformaticians began to shift to Python. Providing APIs in Python that are similar to those in R can reduce the learning cost of relearning a programming language. And compared to ggplot2 in R, drawing framework is not as easy to use in Python. The appearance of plotnine (ggplot2 in Python version) makes it possible to unify the programming methods of bioinformatics visualization tools between R and Python. RESULTS: Here, we introduce plotnineSeqSuite, a new plotnine-based Python package provides a ggseqlogo-like API for programmatic drawing of sequence logos, sequence alignment diagrams and sequence histograms. To be more precise, it supports custom letters, color themes, and fonts. Moreover, the class for drawing layers is based on object-oriented design so that users can easily encapsulate and extend it. CONCLUSIONS: plotnineSeqSuite is the first ggplot2-style package to implement visualization of sequence -related graphs in Python. It enhances the uniformity of programmatic plotting between R and Python. Compared with tools appeared already, the categories supported by plotnineSeqSuite are much more complete. The source code of plotnineSeqSuite can be obtained on GitHub (https://github.com/caotianze/plotnineseqsuite) and PyPI (https://pypi.org/project/plotnineseqsuite), and the documentation homepage is freely available on GitHub at (https://caotianze.github.io/plotnineseqsuite/). SUPPLEMENTARY INFORMATION: The online version contains supplementary material available at 10.1186/s12864-023-09677-8.
format Online
Article
Text
id pubmed-10546746
institution National Center for Biotechnology Information
language English
publishDate 2023
publisher BioMed Central
record_format MEDLINE/PubMed
spelling pubmed-105467462023-10-04 plotnineSeqSuite: a Python package for visualizing sequence data using ggplot2 style Cao, Tianze Li, Qian Huang, Yuexia Li, Anshui BMC Genomics Software BACKGROUND: The visual sequence logo has been a hot area in the development of bioinformatics tools. ggseqlogo written in R language has been the most popular API since it was published. With the popularity of artificial intelligence and deep learning, Python is currently the most popular programming language. The programming language used by bioinformaticians began to shift to Python. Providing APIs in Python that are similar to those in R can reduce the learning cost of relearning a programming language. And compared to ggplot2 in R, drawing framework is not as easy to use in Python. The appearance of plotnine (ggplot2 in Python version) makes it possible to unify the programming methods of bioinformatics visualization tools between R and Python. RESULTS: Here, we introduce plotnineSeqSuite, a new plotnine-based Python package provides a ggseqlogo-like API for programmatic drawing of sequence logos, sequence alignment diagrams and sequence histograms. To be more precise, it supports custom letters, color themes, and fonts. Moreover, the class for drawing layers is based on object-oriented design so that users can easily encapsulate and extend it. CONCLUSIONS: plotnineSeqSuite is the first ggplot2-style package to implement visualization of sequence -related graphs in Python. It enhances the uniformity of programmatic plotting between R and Python. Compared with tools appeared already, the categories supported by plotnineSeqSuite are much more complete. The source code of plotnineSeqSuite can be obtained on GitHub (https://github.com/caotianze/plotnineseqsuite) and PyPI (https://pypi.org/project/plotnineseqsuite), and the documentation homepage is freely available on GitHub at (https://caotianze.github.io/plotnineseqsuite/). SUPPLEMENTARY INFORMATION: The online version contains supplementary material available at 10.1186/s12864-023-09677-8. BioMed Central 2023-10-03 /pmc/articles/PMC10546746/ /pubmed/37789265 http://dx.doi.org/10.1186/s12864-023-09677-8 Text en © The Author(s) 2023 https://creativecommons.org/licenses/by/4.0/Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/ (https://creativecommons.org/licenses/by/4.0/) . The Creative Commons Public Domain Dedication waiver (http://creativecommons.org/publicdomain/zero/1.0/ (https://creativecommons.org/publicdomain/zero/1.0/) ) applies to the data made available in this article, unless otherwise stated in a credit line to the data.
spellingShingle Software
Cao, Tianze
Li, Qian
Huang, Yuexia
Li, Anshui
plotnineSeqSuite: a Python package for visualizing sequence data using ggplot2 style
title plotnineSeqSuite: a Python package for visualizing sequence data using ggplot2 style
title_full plotnineSeqSuite: a Python package for visualizing sequence data using ggplot2 style
title_fullStr plotnineSeqSuite: a Python package for visualizing sequence data using ggplot2 style
title_full_unstemmed plotnineSeqSuite: a Python package for visualizing sequence data using ggplot2 style
title_short plotnineSeqSuite: a Python package for visualizing sequence data using ggplot2 style
title_sort plotnineseqsuite: a python package for visualizing sequence data using ggplot2 style
topic Software
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10546746/
https://www.ncbi.nlm.nih.gov/pubmed/37789265
http://dx.doi.org/10.1186/s12864-023-09677-8
work_keys_str_mv AT caotianze plotnineseqsuiteapythonpackageforvisualizingsequencedatausingggplot2style
AT liqian plotnineseqsuiteapythonpackageforvisualizingsequencedatausingggplot2style
AT huangyuexia plotnineseqsuiteapythonpackageforvisualizingsequencedatausingggplot2style
AT lianshui plotnineseqsuiteapythonpackageforvisualizingsequencedatausingggplot2style