更改由 ggiNEXT() 生成的 ggplot objects

Changing ggplot objects generated by ggiNEXT()

这是 iNEXT 包中给出的基本示例:

library(iNEXT)
data(spider)
# multiple abundance-based data with multiple order q
z <- iNEXT(spider, q=c(0,1,2), datatype="abundance")
p1 <- ggiNEXT(z, facet.var="site", color.var="order")

在我的数据集中,我有更多的样本,但刻面效果不是很好:

,所以我想更改 object "p1" 中 facet_wrap/grid-call 中的 ncol/nrow 参数。 p1 是一个 ggplot object,因此可以更改它(f.e。p1 + xlab("") 删除了 x-title)。

一般来说,如果知道如何将 gginext() 分解为单行,以及在数据参数中使用了哪些 object,那将是一件好事,这样我就可以更改样本并减少每个地块使用的样本量。不知何故,我无法通过查看函数本身找到它,当我尝试遵循 gginext() step-by-step.

时,我也会得到 "Error: ggplot2 doesn't know how to deal with data of class iNEXT"

您可以使用 facet_wrap(~site, ncol=3) 来调整您的情节。举个简单的例子如下:

library(iNEXT)
library(ggplot2)
set.seed(123)
p <- 1/1:sample(1:50, 1)
p <- p/sum(p)
dat <- as.data.frame(rmultinom(9, 200, p))
z <- iNEXT(dat, q=c(0,1,2))
p1 <- ggiNEXT(z, facet.var="site", color.var="order") 
p1 + facet_wrap(~site, ncol=3)