Ordihull 标签出现一次

Ordihull label with single occurrence

我想使用 vegan 中的函数 ordihull 为我的排序绘制组。但是我有一些网站只出现过一次。使用 ordihull 这个站点不会出现在图中。请参见下面的示例,当只有一个站点将 BF 作为管理时。我想要的是一个 BF 标签,其中一个剩余的 BF 管理站点位于排序图中。

library(vegan)
data(dune)
data(dune.env)

#remove all but one row with BF as management
dune <- dune[-c(2,11),]
dune.env <- dune.env[-c(2,11),]

mod <- cca(dune ~ Management, dune.env)
attach(dune.env)
plot(mod, type="n", scaling = 3)
pl <- ordihull(mod, Management, scaling = 3, label = TRUE)

orihull 忽略具有单个观察的组,因此不会使用凸包的中心填充组质心对象。你可以认为它应该;我需要与 Jari 一起解决这个问题,看看我们是否可以解决这个问题。

要解决此问题,您必须使用 text() 方法在次要步骤中添加单个观察的位置。 [正确删除 BF 观察结果之一的所有条形图 -- -c(2,11)] 以下将执行您想要的操作:

plot(mod, type="n", scaling = 3)
with(dune.env, ordihull(mod, Management, scaling = 3, label = TRUE))
with(dune.env,
     text(mod, labels = Management, select = Management == "BF",
          scaling = 3, display = "sites"))

给予

这变得微不足道,因为您可以指定 select 以选择在具有 Management == "BF" 的一个观测值上绘图。