从轴标签的摘要 (rda) 中提取 "Proportion of variance explained"

Extracting "Proportion of variance explained" from summary(rda) for axis labels

我想绘制 RDA 并让轴标签自动填充由摘要输出中解释的方差比例解释的方差比例。不幸的是,我似乎无法弄清楚如何调用该特定对象。 使用示例:

a<-as.matrix(varespec)
b<-as.matrix(varechem)
R<-rda(b,a)
summary(R)
R2<-RsquareAdj(R)
P2<-anova(R)
title<-paste("P=", P2$`Pr(>F)`, "R2=",R2$r.squared)
plot(R,type="n",bty="n",main= title,
     xlab="{var RDA1}% variance explained", 
     ylab="{var RDA2}% variance explained", 
     col.main="black",col.lab="black", col.axis="white",
     xaxt="n",yaxt="n")
abline(h=0,v=0,col="black",lwd=2)
points(R,display="species",col="gray",pch=20) 
points(R,display="cn",lwd=3)
text(R,display="cn",cex=0.5) 

在该示例中,我想将 {var RDA1} 替换为 RDA1 和 RDA2 列(第 1 列和第 2 列,第 2 行)下“组件的重要性:”部分中的“解释比例”的值分别)。我似乎无法弄清楚如何引用这些特定值。

这些值由 summary(R) 计算,因此您必须将它们保存为一个对象:

R.sum <- summary(R)
R.sum$cont   # Prints the "Importance of components" table
R.sum$cont$importance[2, "RDA1"]
# 0.74785
R.sum$cont$importance[2, "RDA2"]
# [1] 0.19804