Skip to page content
Return to Top

Biodiversity in Multidimensional Space



Defining Confidence Envelopes for Biodiversity Metrics

Simultaneous consideration of information for multiple dimensions of biodiversity can provide insights into the relative importance of mechanisms that mold the phylogenetic or functional structure of communities. We present a method for the creation of confidence envelopes that define expectations based on random selection of species from a regional species pool and based on phylogenetic inertia. We use data for Neotropical bats from two different regions to demonstrate the utility of the method and provide examples of the insights that can be gained with respect to the importance of particular ecological and evolutionary mechanisms in structuring these communities.

We use a Monte Carlo simulation to construct confidence envelopes for pairs of dimensions of biodiversity based on a regional fauna. All metrics of biodiversity use the same framework based on Hill numbers, facilitating comparisons among dimensions or systems. For evaluations of phylogenetic biodiversity or functional biodiversity as a function of abundance biodiversity, confidence envelopes represent expectations based on random selection. For evaluations of functional biodiversity as a function of phylogenetic biodiversity, confidence envelopes represent expectations based on phylogenetic inertia. We used abundance, phylogenetic, and functional data for bats from Costa Rica and Peru as model systems to demonstrate the ability of the method to provide evidence for particular mechanisms that structure phylogenetic or functional dimensions of communities. Analyses were conducted separately for each season to demonstrate seasonal dynamics in community structure.

About half of bat communities from Costa Rica exhibited phylogenetic underdispersion, functional underdispersion, or functional deficit each season, with remaining communities having structure consistent with random selection or phylogenetic inertia. No communities exhibited phylogenetic overdispersion, functional overdispersion, or functional surplus. In Peru, all communities had phylogenetic and function structure consistent with random selection, but 3 communities during the wet season exhibited a functional deficit.

Bat communities in Peru exhibited patterns consistent with random selection and phylogenetic inertia. This likely represents a balance of mechanisms that promote overdispersion or functional surplus and mechanisms that promote underdispersion or functional deficit. Bat communities in Costa Rica exhibited season specific patterns. Only high biodiversity communities exhibited underdispersion or functional deficit during times of low resource availability, whereas low, intermediate, or high diversity communities could exhibit underdispersion or functional deficit during times of high resource abundance. Season-specific changes in community structure are consistent with the relaxation of competition within clades during times of high resource abundance.


  • Steven J. Presley, Laura M. Cisneros, Christopher L. Higgins, Brian T. Klingbeil, Samuel M. Scheiner, and Michael R. Willig. 2018. Phylogenetic and functional underdispersion in Neotropical phyllostomid bat communities. Biotropica 50:135-145.

The computer programs used in the aforementioned studies are available in the following library of MATLAB functions.  MATLAB is a "high-performance language for technical computing. It integrates computation, visualization, and programming in an easy-to-use environment where problems and solutions are expressed in familiar mathematical notation." (The MathWorks). The folder should be downloaded and unzipped into a directory within the "toolbox" folder of the MATLAB directory and the name of the directory must be added to the MATLAB search path (type help addpath in MATLAB for additional information). In addition to these functions, you will need the basic Matlab software and the Statistics toolbox provided from Mathworks.  Once everything is installed, you will only need to call the "ScheinerRand" function. You should copy the usage statement below and paste it into the MATLAB COMMAND WINDOW. Supply the necessary input arguments, and away you go!!!