Как построить векторы из капскейл-анализа в ggplot2? - PullRequest
0 голосов
/ 04 марта 2020

Я сгенерировал capscale модель данных о составе сообщества присутствия-отсутствия, используя capscale в vegan. Я могу использовать следующий код для создания графика с использованием базы R

(SOR.capscale <- capscale(SOR ~ df.meta.clin.week.snake$copy.num + df.meta.clin.week.snake$exp.time, df.otus.clin.week.snake.nonzero)) #specify model
plot(SOR.capscale, main = "Capscale Analysis", xlab = "CAP1", ylab = "CAP2")
points(SOR.capscale, col = expgroup)
ordihull(SOR.capscale, expgroup, col = c("black", "red"), label = FALSE, display = "sites")

. Создается следующая визуализация

enter image description here

Я использовал следующий код для извлечения значений CAP из модели capscale, чтобы построить их в ggplot

x <- as.data.frame(scores(SOR.capscale, display = "sites"))
df.pred.clin.week.snake$CAP1 <- x$CAP1
df.pred.clin.week.snake$CAP2 <- x$CAP2

Я использовал эти данные для генерации графика в ggplot с перечисленным кодом

ggplot(df.pred.clin.week.snake, aes(x= CAP1, y= CAP2, color = expgroup)) + 
  stat_ellipse(aes(fill = expgroup), geom = "polygon", alpha = 0.2) +
  geom_point() +
  theme_classic() + 
  coord_cartesian(xlim=c(-20, 20), ylim=c(-6.5, 15)) +
  geom_hline(yintercept = 0, linetype="dotted") + 
  geom_vline(xintercept = 0, linetype="dotted") +
  labs(color = "Experimental Treatment", fill = "Experimental Treatment") +
  ggtitle("Capscale Analysis") +
  theme(plot.title = element_text(hjust = 0.5))
  ylab("CAP2") + 
  xlab("CAP1") 

enter image description here

Мой вопрос заключается в том, как бы я извлек векторную информацию из модели анализа капскейла таким образом, чтобы я мог затем построить ее, используя ggplot? Спасибо большое!

...