2013-10-20 53 views
1

我对R相对来说比较陌生,我试图让我的脑袋围绕如何在R中做协调技术,以便我不需要使用其他软件。 我正在尝试在物种中使用环境因素的PCA。 由于我的网站在质量上有所不同(在土地使用方面),我希望能够在最终情节(不同颜色)中表现出这种差异。因此,我用包装素食主义者的方法加拉辛普森。到现在为止还挺好。这里也是我用于此的代码:在RDA中添加箭头R

with(fish, status) 
scl <- -1 ## scaling = -1 
colvec <- c("red2", "mediumblue") 
plot(pond.pca, type = "n", scaling = scl) 
with(fish, points(pond.pca, display = "sites", col = colvec[status], scaling = scl, pch = 21, bg = colvec[status])) 
head(with(fish, colvec[status])) 
text(pond.pca, display = "species", scaling = scl, cex = 0.8, col = "darkcyan") 
with(fish, legend("topright", legend = levels(status), bty = "n", col = colvec, pch = 21, pt.bg = colvec)) 

当我尝试在排序图中为环境变量放置箭头时,问题就出现了。如果我使用biplot和其他功能,如ordiplot等我不能保持我的两种类型的网站不同的颜色,因此我不想使用这些。如果我在这里使用的命令:

plot(envfit(pond.pca, PondEnv38, scaling=-1), add=TRUE, col="black") 

我得到很好的箭,只有不与我VE之前(5号线)与代码中给出的环境变量对齐(在某些情况下是完全相反)。我试图改变缩放但他们不能对齐。

有谁知道如何处理这个问题?

任何提示将是有用的。

+0

您可能认为您暗示某个软件包正在使用,但对于在该领域没有任何经验的人来说,它似乎确实如此。此外,数据似乎也需要,所以我建议您构建一个小数据集来说明问题并将其发布或链接到该数据集。 –

+0

等了两个小时后,我因为缺乏清晰度而投票结束。 –

+0

@DWin嗯,OP表示他们正在使用**纯素**,并且已经标记为这样。我想明确的“要求”不会含糊不清,但2个小时?真的吗?并非所有人都一直在这里闲逛。过早。 –

回答

2

不清楚你在做什么错误,因为你没有提供一个可重现的问题的例子,我很难跟随你的描述错误。这里有一个完整的例子,你可以按照你的想法去做。

data(varespec) 
data(varechem) 

ord <- rda(varespec) 

set.seed(1) 
(fit <- envfit(ord, varechem, perm = 999)) 

## make up a fake `status` 
status <- factor(rep(c("Class1","Class2"), times = nrow(varespec)/2)) 

> head(status) 
[1] Class1 Class2 Class1 Class2 Class1 Class2 

现在绘制

layout(matrix(1:2, ncol = 2)) 
## auto version 
plot(fit, add = FALSE) 

## manual version with extra things 
colvec <- c("red","green") 
scl <- -1 
plot(ord, type = "n", scaling = scl) 
points(ord, display = "sites", col = colvec[status], pch = (1:2)[status]) 
points(ord, display = "species", pch = "+") 
plot(fit, add = TRUE, col = "black") 
layout(1) 

其中给出

enter image description here

和所有的箭头似乎被人指指点点,因为他们想,如果你直接绘制的envfit对象。

+0

非常感谢您的帖子。我修正了我的错误,现在看到它是相当愚蠢的。 –