Skip to main content
Access Microbiology logoLink to Access Microbiology
. 2024 Jan 25;6(1):000742.v3. doi: 10.1099/acmi.0.000742.v3

BactEXTRACT: an R Shiny app to quickly extract, plot and analyse bacterial growth and gene expression data

Julien Dénéréaz 1, Jan-Willem Veening 1,*
PMCID: PMC10866030  PMID: 38361656

Abstract

To streamline the analysis and visualization of bacterial growth and gene expression data obtained by microtitre plate readers, we developed BactEXTRACT, an intuitive, easy-to-use R Shiny application. BactEXTRACT simplifies the transition from raw optical density, fluorescence and luminescence measurements to publication-ready plots. This package offers a user-friendly interface that reduces the complexity involved in growth curve and gene expression analysis and is generally applicable. BactEXTRACT is available at https://veeninglab.com/bactextract.

Keywords: bacterial growth, high-throughput data analysis, microtitre plate reader, RShiny

Data availability

BactEXTRACT source code along with the most recent development version can be found at https://github.com/veeninglab/BactEXTRACT, and the online R Shiny application is available with any web browser at https://veeninglab.com/bactextract. Example data used in this article can be found at https://github.com/veeninglab/BactEXTRACT/tree/main/Examples.

Introduction

Bacterial growth measurement is one of the most commonly used methods to assess bacterial fitness and is essential for a broad spectrum of applications, ranging from basic biological research to the screening and development of antibiotics [1]. Bacterial growth is typically assessed by measuring the optical density of a culture over time at a specific wavelength through periodic sampling using a spectrophotometer or within a microplate reader [2]. The advantage of using plate readers is that many strains and conditions can be tested simultaneously. However, such high-throughput experiments yield large datasets that require extensive analysis. As a result, several tools have been developed that can dive deeply into quantifying the growth parameters and can perform detailed statistical analysis [2–7]. In order to simplify the process between output data and producing publish-ready plots, we developed BactEXTRACT, an R Shiny application, to expedite the analysis and visualization of bacterial growth data (https://veeninglab.com/bactextract). This application stands out for its simplicity and intuitive design, aimed at easing the process of growth curve analysis and plotting.

Functionality

BactEXTRACT is a versatile software tool designed to facilitate the analysis of biological data, particularly optical density (OD) and other related measurements, such as luminescence and fluorescence. It allows for the import of one or multiple Excel or text files, with any amount of sub-table combinations (OD, luminescence, fluorescence), enhancing efficiency in handling extensive datasets. Excel files must be the raw data file produced by common microplate reader such as TECAN or BioTek (Fig. 1a). Currently, supported softwares are TECAN i-control, SparkControl and BioTek Gen5. A settings file can also be uploaded, enabling users to save their analysis parameters, making it possible to consistently apply the same analysis criteria to different datasets without reconfiguring settings each time. Local web browser storage can also be used to save settings that will automatically be set the next time on the same web browser. Customized conditions can easily be entered in the app by the user, allowing the separation of the growth data, for example by strain and treatment (Fig. 1b). In addition, BactEXTRACT allows merging of technical replicates by means of adjacent wells (such as wells A1–A2–A3), allowing, for example, the merging of multiple data files corresponding to biological replicates. The application provides useful normalization settings, either by time or by OD. Normalization by OD enables the use of specific wells as background to use for normalization, and time normalization allows the standardization of lag phases over a dataset. Customization options are abundant and are based on the conditions set by the user (Fig. 1b), affording users the ability to tailor the thematic presentation of their data. It also supports the creation of combination plots that display OD with relative light units (RLU) or with any other fluorescence/luminescence data present in the Excel file normalized by OD, a crucial requirement for reporter growth assays (Fig. 1e). To analyse growth parameters, BactEXTRACT relies on Growthcurver [2], a simple R package fitting a logistic equation to each growth curve using:

Fig. 1.

Fig. 1.

BactEXTRACT R Shiny application. (a) Raw data from common plate readers and simple text files can be input into the software. Multiple files can be uploaded at the same time. (b) The web interface of BactEXTRACT allows for the quick editing of any parameters and customized theming. (c) BactEXTRACT fits a logistic curve to every sample. Different graphical layers such as colour, shape, linetype and facet can be chosen to allow for clear separation of all groups present in the data. (d) Standard OD growth plots on logarithmic or linear axes can be plotted. (e) Luminescence and fluorescence sub-tables (if any) can be selected and plotted as well, either normalized by OD or as a standalone plot. (f, g) Each growth parameter output from the logistic fitting can be plotted as either a bar plot (f) or as a checkerboard plot, which is particularly handy when combinations of antimicrobial compounds are being tested (g).

,Nt=K1+K-N0N0e-rt

where Nt describes the population size at time t, as described in the Growthcurver package (Fig. 1c) [2]. The user has the flexibility to select the desired time range for the fitting process. Standard parameters are available for plotting, such as area under the curve (AUC), growth rate and all single parameters of the fitted logistic equation. Visual representations of these parameters include either a bar plot or a checkerboard plot, which is particularly beneficial for contrasting two different conditions, such as in antibiotic combination assays (Fig. 1f, g). Finally, BactEXTRACT allows for the export of both visual plots in various file formats and computed data, facilitating easy sharing and further examination of the results.

Discussion

BactEXTRACT offers several features that can facilitate scientific research and does not require the acquisition of programming skills that can be time consuming. While BactEXTRACT is very powerful at plotting data, it has a few limitations. For example, currently statistical analysis between groups has to be performed by the user. However, as the data can be downloaded in the ‘tidy’ format, further processing in R is facilitated. Despite offering fewer complexities in mathematical modelling than other bacterial growth curve analysis softwares, such as AMiGA and QurvE [7, 8], BactEXTRACT distinguishes itself with its simplicity and straightforward approach and has become one of the favourite tools used in our group and by our collaborators for analysing and plotting growth curves and we thus expect it to be of general use to the microbiology community. Future developments will allow more features to be added, such as different parametric models to fit bacterial growth curves, or quality of life improvements for better customization plots and faster processing.

Funding information

Work in the Veening lab is supported by the Swiss National Science Foundation (SNSF) (project grants 310030_192517, 310030_200792 and ‘AntiResist’ 51NF40_180541) and ERC consolidator grant 771534-PneumoCaTChER.

Acknowledgement

We would like to thank Paddy Gibson and Bevika Sewgoolam for bug reports and example data sharing. We also thank all members of the Veening lab for helpful features ideas, and for software testing over the years.

Author contributions

J.D.: conceptualization, code development, software, writing – original draft preparation. J.W.V.: writing – review and editing.

Conflicts of interest

The authors declare that there are no conflicts of interest.

Footnotes

Abbreviations: AUC, area under the curve; OD, optical density; RLU, relative light units.

References

  • 1.Monod J. The growth of bacterial cultures. Annu Rev Microbiol. 1949;3:371–394. doi: 10.1146/annurev.mi.03.100149.002103. [DOI] [Google Scholar]
  • 2.Sprouffske K, Wagner A. Growthcurver: an R package for obtaining interpretable metrics from microbial growth curves. BMC Bioinformatics. 2016;17:172. doi: 10.1186/s12859-016-1016-7. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 3.Vehkala M, Shubin M, Connor TR, Thomson NR, Corander J. Novel R pipeline for analyzing biolog phenotypic MicroArray data. PLoS One. 2015;10:e0118392. doi: 10.1371/journal.pone.0118392. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 4.Vervier K, Browne HP, Lawley TD. CarboLogR: a Shiny/R application for statistical analysis of bacterial utilisation of carbon sources. Bioinformatics. 2019:695676. doi: 10.1101/695676. [DOI] [Google Scholar]
  • 5.Hall BG, Acar H, Nandipati A, Barlow M. Growth rates made easy. Mol Biol Evol. 2014;31:232–238. doi: 10.1093/molbev/mst187. [DOI] [PubMed] [Google Scholar]
  • 6.Cuevas DA, Edwards RA. PMAnalyzer: a new web interface for bacterial growth curve analysis. Bioinformatics. 2017;33:1905–1906. doi: 10.1093/bioinformatics/btx084. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 7.Wirth NT, Funk J, Donati S, Nikel PI. QurvE: user-friendly software for the analysis of biological growth and fluorescence data. Nat Protoc. 2023;18:2401–2403. doi: 10.1038/s41596-023-00850-7. [DOI] [PubMed] [Google Scholar]
  • 8.Midani FS, Collins J, Britton RA. AMiGA: software for automated analysis of microbial growth assays. mSystems. 2021;6:e0050821. doi: 10.1128/mSystems.00508-21. [DOI] [PMC free article] [PubMed] [Google Scholar]

Associated Data

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

Data Availability Statement

BactEXTRACT source code along with the most recent development version can be found at https://github.com/veeninglab/BactEXTRACT, and the online R Shiny application is available with any web browser at https://veeninglab.com/bactextract. Example data used in this article can be found at https://github.com/veeninglab/BactEXTRACT/tree/main/Examples.


Articles from Access Microbiology are provided here courtesy of Microbiology Society

RESOURCES