Data and code from: Satellite-derived NDVI predicts forage availability in a wild ungulate system: ground-truthing using field-collected live vegetation biomass
Data files
Sep 30, 2026 version files 905.37 MB
-
1._LandsatTS_Download_Raw_Data_from_GEE.R
3.25 KB
-
1.5_Veg_Classified_Shapefile_Clipping_(for_Robin_s_Classifications).R
18.82 KB
-
2._LandsatTS_Generate_NDVI_Dataset.R
3.18 KB
-
3._NDVI_Dataset_with_vegetation_types.R
1.71 KB
-
4._MODIS_Data_download_and_dataset.R
21.09 KB
-
5._Generate_final_Landsat_and_combined_MODIS___Landsat_Datasets.R
6.76 KB
-
dataset_metadata.csv
3.26 KB
-
Landsat_and_MODIS_Model_Plots.R
18.87 KB
-
Landsat_Model_Dataset.csv
72.08 MB
-
Landsat_Models.R
4.56 KB
-
Landsat_MODIS_Combined_Model_Dataset.csv
253.77 KB
-
LandsatTS_Phenology_Min10Obs_Non_XCalibrated.csv
51.72 MB
-
LandsatTS_Phenology_Min10Obs_VegClassified.csv
87.91 MB
-
LS_Model_Spatial_Interaction_REMLFALSE.rds
138.73 MB
-
LS_Model_Spatial_Interaction.rds
138.73 MB
-
LS_Model_Spatial_NoVeg_REMLFALSE.rds
138.19 MB
-
LS_Model_Spatial_REMLFALSE.rds
138.29 MB
-
LS_Model_Spatial.rds
138.29 MB
-
MCD12Q2_MasterFile_Inc_VegTypes_2.csv
335.04 KB
-
pixels_by_number_of_obs_per_year_pre_filtering.R
1.48 KB
-
README.md
6.18 KB
-
rum_NorthBlock_VegClassified.dbf
442.70 KB
-
rum_NorthBlock_VegClassified.prj
145 B
-
rum_NorthBlock_VegClassified.shp
273.86 KB
-
rum_NorthBlock_VegClassified.shx
1.93 KB
-
StCp_JunJul.csv
7.17 KB
-
Veg_vs_NDVI_Model_2.R
9.10 KB
-
Xcal_vs_nonXcal_histogram_code.R
3.59 KB
Abstract
Satellite-derived vegetation indices provide a powerful means to quantify habitat variation in long-term ecological studies, but their reliability as proxies for forage availability in wild herbivore populations remains underexplored. We used three decades of Landsat satellite imagery (1991–2023) to generate a 30 m resolution dataset of a proxy for annual vegetation greenness – the Normalised Difference Vegetation Index (NDVI) – for the Isle of Rum, Scotland, home to a long-term study of wild red deer (Cervus elaphus). We ground-truthed the NDVI data against live vegetation biomass data collected from calcareous grassland, which is preferred by the deer, and compared it with a coarser-resolution (500 m) MODIS Enhanced Vegetation Index (EVI) metric. Landsat NDVI was positively correlated with both live biomass and EVI, supporting its ecological relevance as a measure of forage availability. All three metrics have increased over the last three decades, indicating a long-term greening trend, with the higher resolution Landsat dataset revealing variation in the rate of change among vegetation groups, including grassland habitats preferred by deer. These findings suggest an increase in forage availability over time, which may have important consequences for the red deer on Rum. Our approach provides a transferable framework for integrating satellite data with individual-based field studies, demonstrating how remote sensing can enhance ecological inference in long-term wildlife research.
Keywords: Landsat–MODIS NDVI, EVI, vegetation, and deer forage analysis (Isle of Rum)
1. General Description
This repository contains the datasets and R scripts used to generate, process, analyse, and visualise satellite-derived vegetation indices (NDVI and EVI) from Landsat and MODIS, alongside field-measured vegetation biomass data from the Isle of Rum, Scotland. The materials support the analyses and figures presented in:
Butt, S., K. Macphie, R. S. Turner, et al. 2026. “ Satellite-Derived NDVI Predicts Forage Availability in a Wild Ungulate System: Ground-Truthing Using Field-Collected Vegetation Biomass.” Ecology and Evolution 16, no. 3: e73258. https://doi.org/10.1002/ece3.73258
The workflow includes:
- Download and preprocessing of Landsat and MODIS imagery
- Cross-calibration of Landsat sensors
- Calculation of NDVI time series and phenology metrics
- Assignment of vegetation types to Landsat pixels
- Construction of final modelling datasets
- Statistical modelling (mixed-effects models) linking NDVI, MODIS EVI, and field biomass
- Generation of key figures and diagnostics
2. Data Files
Core Datasets
File: Landsat_Model_Dataset.csv
Description: Final Landsat-only dataset used for statistical models. Contains annual NDVIMax values, vegetation group, year, pixel ID, and relevant covariates.
File: Landsat_MODIS_Combined_Model_Dataset.csv
Description: Combined dataset linking Landsat NDVIMax and MODIS EVI amplitude for comparison analyses.
File: LandsatTS_Phenology_Min10Obs_Non_XCalibrated.csv
Description: Landsat time series phenology metrics prior to cross-calibration (minimum 10 observations per year).
File: LandsatTS_Phenology_Min10Obs_VegClassified.csv
Description: As above, but with vegetation classes assigned based on spatial overlay with the vegetation map.
File: MCD12Q2_MasterFile_Inc_VegTypes_2.csv
Description: MODIS MCD12Q2 EVI amplitude product for Rum, with additional variables (including vegetation grouping where relevant).
File: StCp_JunJul.csv
Description: Field-measured live standing crop (June–July) from deer exclosure plots, used as a ground-truth proxy for vegetation biomass.
File: dataset_metadata.csv
Description: Metadata table describing key variables across datasets (variable names, units, and definitions).
3. Spatial Files (Vegetation Map)
These files define the vegetation classification used to label Landsat pixels:
- rum_NorthBlock_VegClassified.shp
- rum_NorthBlock_VegClassified.shx
- rum_NorthBlock_VegClassified.dbf
- rum_NorthBlock_VegClassified.prj
These represent a polygon map of vegetation types across the Rum North Block, used to assign vegetation classes to Landsat pixels via centroid overlap.
4. R Scripts (Workflow)
The scripts are numbered in the order they should be run:
1._LandsatTS_Download_Raw_Data_from_GEE.R
Description: Downloads raw Landsat surface reflectance data from Google Earth Engine.
1.5_Veg_Classified_Shapefile_Clipping_(for_Robin_s_Classifications).R
Description: Clips and prepares the vegetation shapefile for analysis.
2._LandsatTS_Generate_NDVI_Dataset.R
Description: Filters pixels, calculates NDVI from Landsat reflectance bands and outputs using LandsatTS package.
3._NDVI_Dataset_with_vegetation_types.R
Description: Assigns vegetation classes to Landsat pixels based on centroid location.
4._MODIS_Data_download_and_dataset.R
Description: Downloads and formats MODIS MCD12Q2 EVI amplitude data.
5._Generate_final_Landsat_and_combined_MODIS___Landsat_Datasets.R
Description: Creates final model-ready datasets.
pixels_by_number_of_obs_per_year_pre_filtering.R
Description: Explores Landsat data coverage before filtering.
Xcal_vs_nonXcal_histogram_code.R
Description: Compares cross-calibrated vs non-cross-calibrated NDVI distributions.
Landsat_and_MODIS_Model_Plots.R
Description: Generates main figures comparing Landsat and MODIS trends.
Veg_vs_NDVI_Model_2.R
Description: Models linking NDVI to field-measured live biomass.
Landsat_Models.R
Description: Fits core Landsat mixed-effects models of NDVIMax over time by vegetation group.
5. Model Objects
These are saved fitted mixed-effects models used in the manuscript:
- LS_Model_Spatial.rds
- LS_Model_Spatial_Interaction.rds
- LS_Model_Spatial_Interaction_REMLFALSE.rds
- LS_Model_Spatial_NoVeg_REMLFALSE.rds
- LS_Model_Spatial_REMLFALSE.rds
These can be loaded in R using:
readRDS("filename.rds")
6. Software and Dependencies
Analyses were conducted in R (version ≥ 4.3.3). Key packages include (not exhaustive):
tidyverse,data.tablelme4,lmerTest,glmmTMBggplot2,ggeffectssf,raster(for spatial data handling)
7. Notes on Methods
- Landsat NDVI was derived from Level-2 Collection-2 Tier-1 surface reflectance.
- Data cleaning and cross-calibration across Landsat 5, 7, and 8 followed Berner et al. (2023) using random forests.
- MODIS EVI amplitude (MCD12Q2) was used as an independent, pre-processed benchmark rather than reprocessed by the authors.
- MODIS analyses were conducted at the overall study-area level due to the 500 m pixel size.
- Field biomass data (StCp_JunJul.csv) come from six locations on calcareous grassland.
8. Citation
If you use these data or code, please cite:
https://doi.org/10.5061/dryad.bzkh189rd
9. Contact
For questions, please contact:
Shane Butt
University of Edinburgh
S.P.Butt@sms.ed.ac.uk
Remote sensing data were downloaded from Google Earth Engine. Data were processed using the LandsatTS package (Berner et al., 2023) All analyses were conducted using R 4.3.3. Models were run using the lme4 (Bates et al., 2015) and glmmTMB (Brooks et al., 2017) packages. Plots were made with ggplot2 (Wickham, 2016).
