“纯素”包装的累积曲线中标准偏差为0

问题描述 投票:0回答:1
dados <- structure(list(Anos = c(2009L, 2015L, 2011L, 2007L, 2005L, 2013L
  ), Coluna1 = c(13L, 11L, 9L, 8L, 6L, 6L), Coluna2 = c(1L, 0L, 
  0L, 1L, 0L, 0L), Coluna3 = c(1L, 8L, 10L, 2L, 4L, 4L), Coluna4 = c(7L, 
  5L, 2L, 5L, 7L, 1L)), class = "data.frame", row.names = c(NA, 
  -6L))

library(vegan)

resultado <- specaccum(dados)

> Warning message:
In cor(x > 0): standard deviation is zero    

richness <- resultado$richness
sd <- resultado$sd
sites <- resultado$sites

y.mínimo <- min(richness)
y.máximo <- max(richness)

y.baixo <- y.mínimo*0.80
y.alto <- y.máximo+(y.mínimo*0.10)

limites.y <- c(y.baixo, y.alto)
plot(riqueza ~ amostras, type = "l",
 ylim = limites.y, xlim = c(1, 9), las = 1, xlab = "Esforço amostral",
 ylab = "Riqueza de espécies")

arrows(amostras, riqueza-desvio, amostras, riqueza+desvio,
 angle = 90, code = 3, length = 0.05)

points(riqueza ~ amostras, pch = 21, bg = "white")

图形是这里:https://imgur.com/a/0ndkplQ

谁知道我该如何修正我的数据(或代码),以便该图看起来或多或少如下图所示?https://imgur.com/a/M2qgunl

r curve vegan
1个回答
0
投票

这里是使用数据构建所需图的简单方法。如果您想构建更好的图,我建议您查看iNEXT程序包。

library(vegan)

#Convert data frame to matrix
dados_matrix<-as.matrix(dados[,-1])
#Name rows as the first column in original df
row.names(dados_matrix)<-dados[,1]

#Do the specaccum function
resultado <- specaccum(dados_matrix)

#Plot
plot(resultado,
     xlab = "Esforço amostral",
     ylab = "Riqueza de espécies",
     #Multiplier to calculate confidence intervals based on sd
     #In this example error bars are calculated as the mean +/- 1.96 sd
     ci = 1.96,
     #Type of confidence intervals
     ci.type = "bar",
     #Length of error bars (i.e., horizontal lines)
     ci.length = 0.1,
     #line width
     lwd = 1.8)

plot specaccum

© www.soinside.com 2019 - 2024. All rights reserved.