[R-sig-eco] Plotting adonis (vegan) results

Vít Syrovátka syrovat at sci.muni.cz
Sat Aug 10 14:33:13 CEST 2013


Dear Jonas,
I've just had a look into the paper (Friberg et al (2013)), but there 
is no information on what kind of ordination they used (at least it is 
very well hidden). Hard to believe, maybe I am wrong, but can't find 
anything about that. And they used different ordination techniques to 
visualise the groups with regard to the results of 'adonis()' and 
'betadisper()' - compare Fig.1 and Fig. 2. Maybe that brought the 
confusion.

The thing is that 'adonis()' tells you, whether the groups consistently 
differ in their community composition, and then it's up to you to chose 
an ordination technique to visualize the groups. Probably that would be 
an ordination that approximates the same distances used in 'adonis()' 
(or 'betadisper()'). The plot method of 'betadisper()' uses Principal 
Coordinate Analysis (PCoA), which you can use to visualize the results 
of 'adonis()' as well (as Gavin and Jari pointed out) or do it by your 
own or choose another ordination technique.

A small example with PCoA:

## taken from ?betadisper:
library(vegan)
data(varespec)

# create the dist object
dis <- vegdist(varespec)

# create grouping variable; First 16 sites grazed, remaining 8 sites 
ungrazed
groups <- factor(c(rep(1,16), rep(2,8)), labels = 
c("grazed","ungrazed"))

# Calculate multivariate dispersions
mod <- betadisper(dis, groups)

# Plot PCoA ordination with differentiated groups = visualize the 
dispersions of groups in 2D ordination space
plot(mod)

## now create the same plot on my own (though with different graphic 
parameters)
# calculate the PCoA ordination sites' scores
pcoa<- cmdscale(dis)
# plot them with different symbols for groups
plot(pcoa, asp=1)
# and add spiders and hulls
ordispider(pcoa, groups)
ordihull(pcoa, groups)

If I am wrong in any point, will be glad if someone corrects me.
Cheers,
Vit


Dne 2013-08-09 19:25, Gavin Simpson napsal:
> What Jari meant was if you use `betadisper()` on your data then it 
> will
> give you an object that has a `plot()` method which will give you 
> something
> of relevance to what `adonis()` and the whole PERMANOVA method is 
> doing. It
> plots the groups centroids and dispersions of the groups in principal
> coordinates space. I don't have easy access to that journal at the 
> minute,
> but will look when I get back from this conference next week.
> 
> You can see how `betadisper` and its `plot` method works in the mean 
> time
> if you want to customise how things are plotted.
> 
> Gavin
> 
> On 9 August 2013 06:54, <Jonas.Persson at niva.no> wrote:
> 
>> Hi all
>> 
>> I'd like to plot my results from adonis (vegan). Internet searches 
>> found
>> me an older post here in which Jari Oksanen wrote: "adonis() does not 
>> have
>> plot method, but  you can use betadisper for plots." But I'm afraid I
>> don't understand how to do it this way.
>> 
>> How can I a) make a plot of adonis results? b) manipulate the layout 
>> of
>> adonis/betadispers figures to my liking?
>> My main inspiration for both adonis and betadispers results plotting 
>> is
>> Friberg et al (2013) Hydrol. Process. 27, 734?740, so I'd like to be 
>> able
>> to produce something similar.
>> 
>> Cheers,
>> Jonas



More information about the R-sig-ecology mailing list