Display Compact Ordered Community Tables
Functions vegemite
and tabasco
display compact
community tables. Function vegemite
prints text tables where
species are rows, and each site takes only one column without
spaces. Function tabasco
provides interface for
heatmap
for a colour image
of the
data. The community table can be ordered by explicit indexing, by
environmental variables or results from an ordination or cluster
analysis.
vegemite(x, use, scale, sp.ind, site.ind, zero=".", select ,...) tabasco(x, use, sp.ind = NULL, site.ind = NULL, select, Rowv = TRUE, Colv = TRUE, labRow = NULL, labCol = NULL, scale, col = heat.colors(12), ...) coverscale(x, scale=c("Braun.Blanquet", "Domin", "Hult", "Hill", "fix","log"), maxabund, character = TRUE)
x |
Community data. |
use |
Either a vector, or an object from |
sp.ind, site.ind |
Species and site indices. In |
zero |
Character used for zeros. |
select |
Select a subset of sites. This can be a logical vector
( |
Rowv, Colv |
Re-order dendrograms for the rows (sites) or
columns (species) of |
labRow, labCol |
character vectors with row and column labels
used in the |
scale |
In |
col |
A vector of colours used for above-zero abundance values. |
maxabund |
Maximum abundance used with |
character |
Return character codes suitable for
|
... |
Arguments passed to |
The function vegemite
prints a traditional community table.
The display is transposed, so that species are in rows and sites in
columns. The table is printed in compact form: only one character
can be used for abundance, and there are no spaces between
columns. Species with no occurrences are dropped from the table.
Function tabasco
produces a similar table as vegemite
using heatmap
, where abundances are coded by
colours. The function scales the abundances to equal intervals for
colour palette, but either rows or columns can be scaled to equal
maxima, or the coverscale
class systems can be used. The
function can also display dendrograms for sites (columns) or species
if these are given as an argument (use
for sites,
sp.ind
for species).
The parameter use
will be used to re-order output. The
use
can be a vector or an object from hclust
or
agnes
, a dendrogram
or any
ordination result recognized by scores
(all ordination
methods in vegan and some of those not in vegan). The
hclust
, agnes
and
dendrogram
must be for sites. The dendrogram is
displayed above the sites in tabasco
, but is not shown in
vegemite
. No dendrogram for species is displayed, except
when given in sp.ind
.
If use
is a vector, it is used for ordering sites. If
use
is an object from ordination, both sites and species are
arranged by the first axis (provided that results are available both
also for species). When use
is an object from
hclust
, agnes
or a
dendrogram
, the sites are ordered similarly as in the
cluster dendrogram. Function tabasco
re-orders the dendrogram
if Rowv = TRUE
or Rowv
is a vector. Such re-ordering is
not available for vegemite
, but it can be done by hand using
reorder.dendrogram
or reorder.hclust
.
Please note that dendrogram
and hclust
reordering can differ: unweighted means of merged branches are used in
dendrogram
, but weighted means (= means of leaves of the
cluster) are used in reorder.hclust
. In all cases where
species scores are missing, species are ordered by their weighted
averages (wascores
) on site order.
Species and sites can be ordered explicitly giving their indices or
names in parameters sp.ind
and site.ind
. If these are
given, they take precedence over use
. A subset of sites can
be displayed using argument select
, but this cannot be used
to order sites, but you still must give use
or
site.ind
. However, tabasco
makes two exceptions:
site.ind
and select
cannot be used when use
is
a dendrogram (clustering result). In addition, the sp.ind
can
be an hclust
tree, agnes
clustering or a dendrogram
, and in that case the
dendrogram is plotted on the left side of the
heatmap
. Phylogenetic trees cannot be directly used,
as.hclust.phylo
(package ape) can transform
these to hclust
trees.
If scale
is given, vegemite
calls coverscale
to
transform percent cover scale or some other scales into traditional
class scales used in vegetation science (coverscale
can be
called directly, too). Function tabasco
can also use these
traditional class scales, but it treats the transformed values as
corresponding integers. Braun-Blanquet and Domin scales are
actually not strict cover scales, and the limits used for codes
r
and +
are arbitrary. Scale Hill
may be
inappropriately named, since Mark O. Hill probably never intended
this as a cover scale. However, it is used as default “cut levels”
in his TWINSPAN
, and surprisingly many users stick to this
default, and this is a de facto standard in publications.
All traditional scales assume that values are cover percentages with
maximum 100. However, non-traditional alternative log
can be
used with any scale range. Its class limits are integer powers of
1/2 of the maximum (argument maxabund
), with +
used
for non-zero entries less than 1/512 of the maximum (log
stands alternatively for logarithmic or logical). Scale fix
is intended for “fixing” 10-point scales: it truncates scale values
to integers, and replaces 10 with X
and positive values below
1 with +
.
The functions are used mainly to display a table, but they return
(invisibly) a list with items species
for ordered species
index, sites
for ordered site index, and table
for the
final ordered community table.
These items can be used as arguments sp.ind
and site.ind
to reproduce the table, or the table
can be further edited. In
addition to the table, vegemite
prints the numbers of species
and sites and the name of the used cover scale.
The name vegemite
was chosen because the output is so
compact, and the tabasco
because it is just as compact, but
uses heat colours.
Jari Oksanen
The cover scales are presented in many textbooks of vegetation science; I used:
Shimwell, D.W. (1971) The Description and Classification of Vegetation. Sidgwick & Jackson.
data(varespec) ## Print only more common species freq <- apply(varespec > 0, 2, sum) vegemite(varespec, scale="Hult", sp.ind = freq > 10) ## Order by correspondence analysis, use Hill scaling and layout: dca <- decorana(varespec) vegemite(varespec, dca, "Hill", zero="-") ## Show one class from cluster analysis, but retain the ordering above clus <- hclust(vegdist(varespec)) cl <- cutree(clus, 3) sel <- vegemite(varespec, use=dca, select = cl == 3, scale="Br") ## Re-create previous vegemite(varespec, sp=sel$sp, site=sel$site, scale="Hult") ## Re-order clusters by ordination clus <- as.dendrogram(clus) clus <- reorder(clus, scores(dca, choices=1, display="sites"), agglo.FUN = mean) vegemite(varespec, clus, scale = "Hult") ## Abundance values have such a wide range that they must be rescaled tabasco(varespec, dca, scale="Braun") ## Classification trees for species data(dune, dune.taxon) taxontree <- hclust(taxa2dist(dune.taxon)) plotree <- hclust(vegdist(dune), "average") ## Automatic reordering of clusters tabasco(dune, plotree, sp.ind = taxontree) ## No reordering of taxonomy tabasco(dune, plotree, sp.ind = taxontree, Colv = FALSE) ## Species cluster: most dissimilarity indices do a bad job when ## comparing rare and common species, but Raup-Crick makes sense sptree <- hclust(vegdist(t(dune), "raup"), "average") tabasco(dune, plotree, sptree)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.