Chlorophyll Bloom Dynamics: JGR Publication Code Archive
Abstract
Full Changelog: https://github.com/jamiesash/climate/commits/Bloom-dynamics-JGR This repository contains the Python and R code used to process satellite ocean color data, perform statistical trend analyses, and generate figures for a study of summertime phytoplankton bloom variability and long-term trends in the North Pacific Ocean surrounding the Hawaiian Islands. The codebase covers the following processing and analysis steps: Data processing: Loading and quality-controlling daily Level 3 satellite chlorophyll-a (CHL) from the Copernicus GlobColour merged product; constructing per-pixel monthly median climatologies and computing seasonal anomalies; removing long-term trends using a 1825-day (5-year) boxcar running mean; spatial cropping to the study region (18°N–35°N, 170°W–130°W); masking the Hawaiian Islands Contiguous Zone using the NOAA US Maritime Limits and Boundaries shapefile; and resampling multi-sensor products (CHL, SST, SLA) to a common grid via nearest-neighbor interpolation. Bloom characterization: Identifying anomalously high chlorophyll pixels using per-pixel median and scaled median absolute deviation (MAD × 1.4826) thresholds; computing bloom center of mass weighted by chlorophyll anomaly values (scipy.ndimage.center_of_mass); estimating bloom magnitude as the 95th percentile of raw chlorophyll at extreme pixels; calculating latitude-corrected bloom area (km²); and estimating cloud cover fraction on peak-area days. Trend analysis: Per-pixel Kendall tau trend tests and Sen's slope estimation on summertime (June–October) chlorophyll anomalies; Gamma generalized linear models (GLM) with log link for bloom magnitude and area as functions of year; and generalized additive models (GAM) examining relationships between sea level anomaly (SLA), sea surface temperature (SST), and chlorophyll during the 2018 bloom period. Validation: Matching satellite chlorophyll with in situ HPLC bottle samples from the Hawaii Ocean Time-series Station ALOHA using 3×3×3 (longitude, latitude, time). Visualization: Mapped chlorophyll fields using Basemap with Lambert conformal conic projection; multi-panel thumbnail grids of monthly bloom composites; Sen's slope and Kendall tau significance maps with contoured p-value boundaries; scatter plots with regression fits; and monthly climatology boxplots. The code is written in Python (numpy, scipy, netCDF4, matplotlib, basemap, statsmodels, pyGAM, geopandas, shapely) and R (mgcv, terra). SLURM job scripts for HPC execution are included.
Publication details
- Journal / source
- Zenodo (CERN European Organization for Nuclear Research)
- Publication date
- 1 May 2026