我已经使用下面的脚本在2个社区之间生成这个betadisper图。
在我的" df"中,第一列是电台名称(x13)
我有两个问题:
脚本:
df <-read.csv("NMDS matrix_csv_NEW.csv", header=T, row.names=1, sep= ",")
df
Label<-rownames(df)
Label
dis <- vegdist(df)
groups <- factor(c(rep(1,8), rep(2,5)), labels = c("ABC","DEF"))
groups
mod <- betadisper(dis, groups)
mod
anova(mod)
permutest(mod, pairwise = TRUE)
plot(mod)
plot(mod, ellipse = TRUE, hull = FALSE, main= "MultiVariate Permutation")
答案 0 :(得分:0)
这是解决问题的可能方法。
从此link下载myplotbetadisp.r
文件并将文件放在工作目录中(警告,不要将文件另存为myplotbetadisp.r.txt
!)。
myplotbetadisper
功能提供了一些其他选项:
fillrect
,填充打印质心标签的方框的颜色;
coltextrect
,质心标签的颜色矢量;
alphaPoints
,质心点的alpha trasparency;
labpoints
,标签向量靠近点绘制;
poslabPoints
,labpoints
中文字的排名说明符。
library(vegan)
# A dummy data generation process
set.seed(1)
n <- 100
df <- matrix(runif(13*n),nrow=13)
# Compute dissimilarity indices
dis <- vegdist(df)
groups <- factor(c(rep(1,8), rep(2,5)), labels = c("ABC","DEF"))
# Analysis of multivariate homogeneity of group dispersions
mod <- betadisper(dis, groups)
source("myplotbetadisp.r")
labPts <- LETTERS[1:13]
col.fill.rect <- addAlpha(col2rgb("gray65"), alpha=0.5)
col.text.rect <- apply(col2rgb(c("blue","darkgreen")), 2, addAlpha, alpha=0.5)
transp.centroids <- 0.7
myplotbetadisper(mod, ellipse = TRUE, hull = FALSE,
fillrect=col.fill.rect, coltextrect=col.text.rect,
alphaPoints=transp.centroids, labPoints=labPts,
main= "MultiVariate Permutation")
这是情节
希望它可以帮到你。
答案 1 :(得分:0)
要回答2),以下是在这些点上方绘制测站名称的方法。
text(mod$vectors[,1:2], label=Label)