Predicting how ecological communities will respond to disturbances is a major challenge in community ecology, especially given the variability in species' responses within the same community. Focusing solely on aggregate responses may obscure extinction risks for certain species due to compensatory effects, emphasizing the need to understand the drivers of the response variability at the species-level. Yet, these drivers remain poorly understood. Here, we reveal that despite the complexity of the network of biotic interactions, species' responses follow a discernible pattern. Specifically, we demonstrate that species whose abundance are most reduced by biotic interactions -- which are not always the rarest species -- will be those that exhibit the strongest responses to disturbances. This insight enables us to pinpoint sensitive species within communities without requiring precise information about biotic interactions. Our novel approach introduces avenues for future research aimed at identifying sensitive species and elucidating their impacts on entire communities.
To reproduce figures of the article, first you have to clone this repository.
Secondly, you can move to the scripts/
directory and install the required package automatically with:
cd scripts # From the root of the project.
julia --project=. -e 'using Pkg; Pkg.instantiate()' # Install Julia packages.
Tip
It is advised to use Julia 1.10, otherwise you may need to resolve conflicts between package versions with:
julia --project=. -e 'using Pkg; Pkg.update()'
Finally, you can execute the scripts.
julia --project=. 01_reactivity-yield-predictability.jl
julia --project=. 02_selection-effect.jl
julia --project=. 03_data.jl
Figures are saved in the scripts/figures/
directory.
This project is structured as a Julia package named SpeciesReactivity
.
The package contains general functions used by the different scripts producing the figures of the article.
For instance, the response
function allows simulating the response of a community to a specified perturbation.
The code of the package is stored in the src/
directory.
The code of the package is tested in the test/
directory.
The scripts producing the figures of the article are stored in the scripts/
directory.
The figures produced by the scripts are stored in scripts/figures/
directory (which is created after the first script is run).