Я никогда не использовал PRIMER, и я не знаю, как эти графы должны рисоваться, но я должен догадаться по графику, который вы разместили.Может случиться так, что вы сначала получите кластерную дендрограмму (функция hclust
), а затем обрежете ее по высоте дерева (функция cutree
), а затем начертите для них вложенные эллипсы (vegan::ordiellipse(..., kind = "ehull")
).Если так, это должно сработать:
library(vegan)
data(BCI)
d <- vegdist(BCI)
ord <- metaMDS(d, trace=FALSE)
cl <- hclust(d, "average") # using average linkage
plot(cl, hang=-1)
rect.hclust(cl, h=0.4, border="red") # to see the clusters
rect.hclust(cl, h=0.5, border="cyan")
rect.hclust(cl, h=0.6, border="blue")
plot(ord) # then ordination & enclosing ellipses
ordiellipse(ord, cutree(cl, h=0.4), kind="ehull", col="red", lwd=2)
ordiellipse(ord, cutree(cl, h=0.5), kind="ehull", col="cyan", lwd=2)
ordiellipse(ord, cutree(cl, h=0.6), kind="ehull", col="blue", lwd=2)
Я скорректировал пределы для текущей дендрограммы.ordiellipse
выдаст вам сообщение об ошибке для каждого класса, состоящего из одного элемента, но они безвредны (я должен очистить функцию от них).