1. Home
  2. ECACCUMULATION procedure


Plots species accumulation curves for samples or individuals (D.A. Murray).


PRINT = string token Controls printed output (summary); default summ
CURVE = string token Controls the type of species accumulation curve (collector, random, coleman); default coll
PLOT = string token Controls plot type (sac); default sac
METHOD = string token Controls collector curve when data supplied in variate or factor with groups (individual, sample); default samp
GROUPS = factor Grouping factor for samples when data are supplied in variate or factor of individuals
NPERMUTATIONS = scalar A scalar defining the number of permutations to be performed for the random method; default 100
SEED = scalar Seed for random number generator; default 0
SCREEN = string token Whether to clear screen before displaying the graph (keep, clear); defaul clea
WINDOW = scalar Window for the graph; default 1
KEYWINDOW = scalar Window number for the key (zero for no key); default 2
PEN = scalar Pen number to draw the curve; default 1


DATA = variates, factors, matrices or pointers For individual-based collector curves, a variate or factor containing the individuals in the order they were collected; for sample-based species accumulation curves, a pointer or matrix specifying the number of individuals for each species for different sites/samples
RICHNESS = variates Saves the observed number of species for the collector method and the average or expected number of species at each sample size for the Coleman and random methods
VARIANCE = variates Saves the variance for the richness (Coleman and random methods only)


Species accumulation curves show the rate at which new species are found within a community, and can be extrapolated to provide an estimate of species richness. The simplest type of species accumulation curve is the collectors curve. This plots the cumulative number of species recorded as a function of sampling effort (i.e. number of individuals collected or cumulative number of samples). The order in which samples are included in a species accumulation curve will influence the overall shape. A smooth accumulation curve can be produced by repeating a process of randomly adding the samples to the accumulation curve and then plotting the mean of these permutations. ECACCUMULATION can be used to produce these types of species accumulation curves, and can plot a Coleman curve of the expected number of species based on the method of Coleman et al. (1982); see Method.

For sample-based species accumulation curves, the data can be supplied using the DATA parameter, either as a matrix where the rows contain the number of individuals for each species and the columns specify the different samples or sites, or as a pointer to variates containing samples for the individuals for each species. Alternatively, the individual species numbers or labels can be supplied in either a variate or factor using the DATA parameter while the samples are identified by supplying a grouping factor using the GROUPS option. Individual-based species accumulation curves can be formed using the collector method, where the individual species numbers or labels are specifed in either a variate or factor using the DATA parameter. The species numbers or labels must be specified in the order in which they were collected within the variate or factor. Different samples of individuals can be plotted on the same graph by supplying a grouping factor using the GROUPS option and specifying the individual setting of the METHOD option. For the collector curve the observed number of species can be saved using the RICHNESS parameter. For the random and Coleman curves the average and expected number of species and associated variance can be saved using the RICHNESS and VARIANCE parameters respectively. The type of species accumulation curve (collector, random or Coleman) is specified using the CURVE option. If the collector curve is chosen and the data have been supplied using the individual values with a grouping factor, the METHOD option can be used to choose whether to produce a sample-based plot or a plot of the individual-based curves. The number of permutations used for the random method can be supplied using the NPERMUTATIONS option, by default 100 permutations are used. The SEED option specifies the seed to use for the sub-sampling without replacements. The default value of zero continues an existing sequence of random numbers or, if the generator has not yet been used in this run of Genstat, initializes the generator automatically.

The PRINT option controls printed output, with settings:

    summary the species richness and variance (for Coleman and random methods).

A plot of the species accumulation curve can be specified using the sac setting of the PLOT option. The graphical display can be controlled using the SCREEN, WINDOW, KEYWINDOW and PEN options. By default the curves are produced in window 1 using pen 1 and drawn on a new screen.




For the collector curve the samples or individuals are added in the order they appear in the data. The random method finds the mean number of species and variance from random permutations using sub-sampling without replacement.

For the Coleman curve the expected number of species is calculated by:

sα = S – ∑i=1…S (1 – α)ni

where S is the number of species, ni is the number of individuals belonging to ith species and α is the relative area

α = a / ∑ak

The variance is estimated by

vα = ∑i=1…S (1 – α)ni – ∑i=1…S (1 – α)2 × ni

Further details of this method are given in Coleman et al. (1982).

Action with RESTRICT

If a parameter is restricted the statistics will be calculated using only those units included in the restriction.


Coleman, B.D., Mares, M.A. Willig, M.R. & Hsieh, Y,-H. (1982). Randomness, area, and species richess. Ecology, 63, 1121-1133.

Magurran, A.E. (2003). Measuring Biological Diversity. Blackwell, Oxford.

See also

Commands for Ecological data.


CAPTION        'ECACCUMULATION examples',\
               'Individual-based collectors curve'; STYLE=meta,minor
FACTOR         [NVALUES=10; LEVELS=4; LABELS=!t('A','G','X','Y')]\
               individuals; VALUES=!T(G,G,A,G,X,Y,G,Y,G,G)
ECACCUMULATION [CURVE=collector] individuals

CAPTION        'Sample-based random and coleman curves',\
               !t('Data from Maguaran (2003).',\
               'Abundance of carabid beetles sampled in hedgerows.');\
VARIATE        [NVALUES=20]\
               S1; VALUE=!(0,0,1,0,2,0,6,1,0,0,0,1,1,0,0,1,0,0,0,0)
&              S2; VALUE=!(0,0,0,1,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0)
&              S3; VALUE=!(6(0),4,13(0))
&              S4; VALUE=!(5(0),2,3,3,6(0),2,5(0))
&              S5; VALUE=!(6(0),4,4(0),4,0,0,1,5(0))
&              S6; VALUE=!(0,0,2,0,1,0,3,2,1,1,4,0,0,1,1,0,1,0,0,0)
&              S7; VALUE=!(6(0),2,0,0,0,1,9(0))
&              S8; VALUE=!(6(0),1,0,1,11(0))
&              S9; VALUE=!(16(0),1,0,0,0)
&              S10; VALUE=!(0,0,2,0,2,0,1,1,0,0,0,1,0,0,0,1,0,0,2,0)
&              S11; VALUE=!(12,5(0),5,13(0))
&              S12; VALUE=!(0,1,1,1,0,0,11,5,0,1,2,9,6(0),1,0)
&              S13; VALUE=!(32,0,0,1,9(0),1,0,0,0,0,1,0)
&              S14; VALUE=!(2,0,2,0,0,1,3,0,0,0,1,9(0))
&              S15; VALUE=!(4(0),1,0,9,3,0,0,0,1,0,0,0,0,0,1,1,0)
&              S16; VALUE=!(0,0,0,0,2,1,2,5(0),1,5(0),1,1)
POINTER        beetle; VALUE=\
ECACCUMULATION [PRINT=*; CURVE=random; SCREEN=keep; PEN=2; SEED=133273] beetle
ECACCUMULATION [PRINT=*; CURVE=collector; SCREEN=keep; PEN=3] beetle
Updated on March 8, 2019

Was this article helpful?