0

我在 R 中处理绘图的经验仍然相对缺乏,需要帮助。我使用该函数在 R 中进行了冗余分析rda(),但现在我需要简化图形以排除不必要的信息。我目前使用的代码是:

abio1516<-read.csv("1516 descriptors.csv")
attach(abio1516)
bio1516<-read.csv("1516habund.csv")
attach(bio1516)
rda1516<-rda(bio1516[,2:18],abio1516[,2:6])

anova(rda1516)
RsquareAdj(rda1516)
summary(rda1516)

  varpart(bio1516[,2:18],~Distance_to_source,~Depth, ~Veg._cover, ~Surface_area,data=abio1516)
plot(rda1516,bty="n",xaxt="n",yaxt="n",main="1516; P=, R^2=",
     ylab="Driven by , Var explained=",xlab="Driven by , Var explained=")

生成的情节如下所示: 雷达图

请帮我修改我的代码:排除站点(sit#)、所有轴和内部虚线。

我还想扩大字段的大小,或者将矢量标签移动到完全适合绘图字段。

根据响应更新,工作代码低于此点

plot(rda,bty="n",xaxt="n",yaxt="n",type="n",main="xxx",ylab="xxx",xlab="xxx
Overall best:xxx")

abline(h=0,v=0,col="white",lwd=3)
points(rda,display="species",col="blue")
points(rda,display="cn",col="black")
text(rda,display="cn",col="black")

在此处输入图像描述

4

1 回答 1

1

首先绘制 rdatype = "n"生成一个空图,您可以在其中添加您想要的东西。虚线被硬编码到 plot.cca 函数中,因此您需要制作自己的版本,或者abline用来隐藏它们(然后box用来掩盖轴上的孔)。

require(vegan)
data(dune, dune.env)
rda1516 <- rda(dune~., data = dune.env)

plot(rda1516, type = "n")
abline(h = 0, v = 0, col = "white", lwd = 3)
box()
points(rda1516, display = "species")
points(rda1516, display = "cn", col = "blue")
text(rda1516, display = "cn", col = "blue")

如果text标签不在正确的位置,您可以使用参数pos来移动它们(创建一个向量,只要您有整数 1 - 4 的箭头数即可将标签向下、向左、向上或向右移动。 (可能有更好的解决方案)

于 2016-04-22T17:21:38.160 回答