0

I'm using the vegan package to plot a NMDS in R analyzing community similarities. This is based on a community matrix that includes different treatments:

NMDS=metaMDS(community_matrix,k=2,trymax=100)
plot(NMDS)

Could anybody tell me how to I can draw arrows to show how individual species respond to treatments?

unkulunkulu
  • 11,576
  • 2
  • 31
  • 49
user1182741
  • 93
  • 1
  • 3
  • 7

1 Answers1

4

Arrows would be the wrong interpretation in such a plot; there is no reason whatsoever to assume that in a plot best preserving rank-order dissimilarity of samples the species respond linearly in that space.

We add species as they would be in a CA, as a weighted average of the sample scores, possibly expanded.

You can add species vectors by projecting them into the space using envfit(), by passing it the NMDS object and the species data, community_matrix in your case. If you have a lot of species, I would probably dispense with the permutations, unless you really need such an indication of significance.

Gavin Simpson
  • 170,508
  • 25
  • 396
  • 453
  • Thus significance of the projected vectors in NMDS is not reliable? – Leosar Feb 17 '16 at 16:34
  • Well, they are reliable if the assumptions of the method are met, which are those of a linear model (in the sense of the general linear model). If the assumption of linearity is not appropriate for the data/NMDS solution to hand, then yes, the p-value would be as reliable as if you'd fitted a simple linear regression to data that clearly came from an underlying polynomial or non-linear function. The rank ordering may be consistent with a linear relationship, but it could just as well not be. – Gavin Simpson Feb 17 '16 at 16:49
  • Hence we have `ordisurf()` which allows the assumption of linearity to be tested via a GAM surface fit rather than the linear plane assumed by the arrow fitting. – Gavin Simpson Feb 17 '16 at 16:50