Data from: Sensitivity and legacy effects in phytoplankton growth and traits under sequential environmental change
Data files
Mar 24, 2026 version files 117.19 MB
-
output.RDS
117.17 MB
-
README.md
12.14 KB
-
Sikder2026.R
15.03 KB
Abstract
When environments change sequentially, past conditions can leave legacies that modify population growth and trait expression under subsequent stress. Under global change, sequences such as marine heatwaves followed by pollution runoff increase the likelihood and consequence of such legacies for population and community dynamics. We tested for sequence-dependent legacy effects in six globally distributed strains of the marine phytoplankton Synechococcus sp. using a full‑factorial microcosm experiment with warming, herbicide pollution, and control treatments as both chronic (constant) and sequential (changing) exposures. We quantified chronic and acute sensitivities as changes in population density, per‑capita growth rate, cell size, and chlorophyll content following respective exposures. Significant chronic sensitivity occurred in 58.3% of strain-exposure combinations and significant acute sensitivity in 48%; acute responses often showed decoupling between growth and traits. Comparisons of chronic and acute sensitivities demonstrate that past environments systematically alter subsequent responses, producing strain‑ and exposure‑specific overcompensation or undercompensation. Consequently, incorporating sequence-based legacies into predictions of biodiversity dynamics and ecosystem function under global change is essential.
This dataset supports an investigation of sequence-dependent legacy effects in six globally distributed strains of the marine phytoplankton Synechococcus sp. In a 17-day full-factorial microcosm experiment, strains were exposed to warming (T), herbicide pollution (atrazine; P), and control (C) conditions applied either chronically (constant throughout) or sequentially (switched partway through the experiment). Population density, per-capita growth rate, cell size, and chlorophyll content were tracked daily by flow cytometry. The dataset contains the processed flow cytometry output as an R data object (output.RDS) and the R script (Sikder2026.R) used to conduct all statistical analyses and generate figures for the associated publication.
Description of the data and file structure
The repository contains two files:
output.RDS (117.17 MB) — A R data object containing processed flow cytometry measurements for all strains, treatment sequences, and sampling days. Load in R with:
data <- readRDS("output.RDS")
This is the output from the raw .fcs files that has been processed. Raw .fcs files were processed using the flowCore (v2.14.2) and cyanoFilter (v1.10.0) packages in R v4.4.2. Debris and doublets were excluded via gating on FSC-H vs. FSC-A thresholds in GuavaSoft 4.5 prior to export as output.RDS.
At this point, the data frame still includes columns with raw .fcs outputs.
| Variable | Description |
|---|---|
| date.time | date and time of cytometry sampling |
| filename | raw .fcs filenames from the cytometer |
| n | well number in the 96-well plate sampled |
| well | well number and row identifier for the sample |
| dil | dilution factor applied to the sample |
| vol | volume of sample used by the cytometer |
| density.uncleaned | raw density values from the cytometer with debris |
strains |
Full strain name for Synechococcus sp. |
| nr. of strains | number of strains in the sample |
| treat | Treatment applied in phase 2 of the sequence: C = control, T = temperature (warming), P = pollution (atrazine) |
| acclimation | phase 1 environment |
| setup | density controlled (DC) or uncontrolled (DN) - DC is not a part of this study. |
| repl | replicate number for the sample (1-3) |
| date | date of sampling per the experiment timeline |
| hour_in_seconds | computation done for converting the calendar date of sampling into the day of the experimental timeline |
| data_cleaned | density data after cleaning debris, in list format |
| cells | number of cells counted for each sampling event |
| density | computed using cells X vol X dil |
Phenotype_Pigment |
Pigmentation phenotype classification |
| FSC.HLin | Forward scatter signal (FSC-H); proxy for relative cell size |
| SSC. HLin | Side scatter signal; proxy for cell granularity |
GRN.B.HLin |
green fluorescence excited by a blue (488 nm) laser; data not relevant |
| YEL.B.HLin | Yellow laser (561 nm); proxy for phycoerythrin |
| RED.B.HLin | Red laser (642 nm); proxy for chlorophyll |
| NIR.B.HLin | Near-infrared laser (700-900nm); data not relevant |
| RED.R.HLin | height of the redb signal; proxy for allophycocyanin |
| NIR.R.HLin | near infra-red detection (645 nm); data not relevant |
| fsc | renamed column from FSC.HLin ; proxy for cell size |
| ssc | SSC.HLin data scaled by cell size |
| redb | RED.B.HLin data scaled by cell size |
| redr | RED.R.HLin data scaled by cell size |
| yelb | YEL.B.HLin data scaled by cell size |
| date.num | as.numeric (date) column |
Habitat |
Geographic origin of the strain; re-used as the strain identifier after loading (renamed in script) |
The following rows are selected : strains, Habitat, Phenotype_Pigment, treat, setup, density,fsc, ssc, redb, redr, yelb, acclimation, date.num, repl to proceed with the analysis.
A sequence variable is created by uniting acclimation and treat with an underscore (e.g., C_C, T_P, P_C), representing the full phase 1 → phase 2 treatment sequence. GAM-smoothed predictions are added as density_p, chl_p, fsc_p, and fsc_p_se. Per-capita growth rate (pcgr_p, day⁻¹) is then computed from density_p.
The script derives per-replicate summary values used in all statistical analyses:
| Derived variable | Description |
|---|---|
Density |
Maximum GAM-predicted density across the time series (cells µL⁻¹) |
PCGR |
Maximum GAM-predicted per-capita growth rate (day⁻¹) |
Chlorophyll |
Temporal mean of GAM-predicted chlorophyll (RED-B) |
Cell.size |
Temporal mean of GAM-predicted cell size (FSC) |
Sikder2026.R (24.56 KB) — R script for the full analysis pipeline. Run from top to bottom with output.RDS in the working directory. The script proceeds through four stages:
- Data loading and preprocessing — loads
output.RDS, selects the variables listed above, filters forsetup == "DN", fits GAMs for density, chlorophyll, and cell size, computes PCGR, and summarises per-replicate maxima/means intoresponse_values. - Outlier removal and cleaning — removes specific outlier rows by index and replaces remaining
NAvalues with column means to produceresponse_values_clean. - Chronic sensitivity analysis — filters sequences
C_C,P_P, andT_T; runs mixed-effect ANOVAs (aov_ez) with strain as between-subject factor and exposure as within-subject factor; computes estimated marginal means and Tukey-corrected pairwise contrasts. - Acute sensitivity analysis — runs equivalent ANOVAs on sequential exposures (phase-switching sequences); computes log-response ratios to quantify legacy effects; produces bootstrapped confidence intervals (1000 replicates) for visualization.
The script generates the following output files:
| Output file | Description |
|---|---|
pairs_chronic.xlsx |
Pairwise Tukey contrasts (P_P − C_C, T_T − C_C, T_T − P_P) for each response variable under chronic exposures |
table_Sequence.html |
Pairwise effect contrasts for each response variable under sequential exposures |
anova_sequence.png |
Mixed-effect ANOVA summary figure for sequential exposures |
sensitivity.pdf |
Summary figure of chronic and acute sensitivity metrics |
| Figures 3, 4, 5 | Chronic sensitivity (Figure 3), acute/legacy sensitivity (Figure 4), and chronic vs. acute scatter plots (Figure 5); saved to working directory |
Sharing/Access information
Links to other publicly accessible locations of the data:
- None
Data was derived from the following sources:
- All data were generated by the authors through original microcosm experiments. Raw flow cytometry files (.fcs) are available upon request from the corresponding author (arunima.sikder@unamur.be).
Code/Software
R (v4.4.2; R Core Team 2023) is required to run Sikder2026.R and to open output.RDS. RStudio (≥ 2022.07) is recommended but not required.
Install all required packages with:
r
install.packages(c("tidyverse", "purrr", "mgcv", "ggplot2", "ggpubr",
"emmeans", "car", "rstatix", "afex", "gridExtra",
"gt", "writexl", "ggrepel"))
| Package | Purpose |
|---|---|
| tidyverse | Data import, manipulation, and visualization framework |
| purrr | Functional programming and iteration |
| mgcv | Generalized Additive Models (gam()) |
| ggplot2 | Data visualization (also loaded via tidyverse) |
| ggpubr | Publication-ready plot extensions (ggarrange()) |
| ggrepel | Non-overlapping text labels in plots |
| emmeans | Estimated marginal means and pairwise contrasts |
| car | ANOVA diagnostics (qqPlot(), leveneTest(), outlierTest()) |
| rstatix | Pipe-friendly statistical tests |
| afex | Mixed-effect ANOVA (aov_ez()) |
| gridExtra | Multi-panel figure layout |
| gt | Publication-quality tables (gt(), gtsave()) |
| writexl | Excel export without Java dependency |
Data obtained from controlled microcosm experiments on Synechococcus sp.
The experiment was conducted over a 17- day period and consisted of a full-factorial design with three conditions: control (c), temperature (t), and pollution (atrazine exposure, P).
Plates were sampled every 24 h for 17 days: at each sampling, 200 µL from each well of a microcosm was withdrawn aseptically into a 96-well plate (Corning Incorporated Costar) and replaced with 200 µL of pre-equilibrated media to maintain constant volume and pollutant concentration.
Population density, cell size, and chlorophyll content were quantified by flow cytometry (GuavaeasyCyte HT-7) using a 488 nm excitation laser, Forward Scatter (FSC detector), and RED-B channel (610/20 nm emission), respectively. Debris and doublets were excluded via gating in GuavaSoft 4.5 based on FSC-H vs. FSC-A thresholds. Raw .fcs files were imported into R (v 4.4.2; R Core Team 2023) via the flowCore (v2.14.2) and cyanoFilter (v1.10.0) packages for post-hoc quality control (debris gating, doublet removal).
