簡體   English   中英

使用 fviz_pca 在 Biplot 上添加圓圈以將具有第二個因素的個人分組

[英]Add circles to group individuals with a second factor on a Biplot using fviz_pca

謝謝你讀我。 我是 R 的新手,所以我迷路了:如何在使用 fviz_pca 制作的雙圖上添加由第二個因素定義的組圓? 我有這張,想應用 PCA 來獲得一個雙標圖,其中個人按“UsoReg”(土地使用)因素分類(着色)(直到這里都很好),但我也想添加圓圈(或一些橢圓形)用第二個因素包圍(組)個人,根據“Estacion”(一年中的季節)列命名,但我不知道該怎么做。 那么,如何在使用 FactoMiner 制作的 Biplot 上添加圓圈以通過第二個因素包圍(分組)個人? (第一個因素是“UsoReg”,通過fill.ind function 着色,第二個因素是“Estacion”,我不知道如何用 plot 圈子根據他們的“Estacion”類對個人進行分組/封閉)。 我想在 3 個不同的土地利用類別(CoigueIX、MixtaIX、AgricolaIX)上可視化 3 個不同的季節(Estacion:Otono、Invierno、Primavera),謝謝。 我使用以下代碼:

PCA_PQ<-function(X){
pca.m<-prcomp(X, scale=TRUE)
contrib_rpca.m<-pca.m$rotation
c_pca.m<-pca.m$center
s_pca.m<-pca.m$scale}
scale(X,center=c_pca.m,scale=s_pca.m)
ev_pca.m<-get_eig(pca.m)
Biplot_pca.m<-fviz_pca_biplot(pca.m,
geom.ind="point",
fill.ind=IX_comp$UsoReg,
col.ind="cos2",
pointshape=21,pointsize=2,
mean.point=FALSE,
alpha.var="contrib",col.var="contrib",
gradient.cols=c("#00AFBB","#E7B800","#FC4E07"),
labelsize=5,
repel=TRUE,
xlab="PC 1",
ylab="PC 2")+
labs(fill="Uso", color="Contrib",alpha="Contrib")+
ggpubr::fill_palette(c("green","yellow","red"))+
theme(text=element_text(size=9),
axis.title=element_text(size=15),
axis.text=element_text(size=12))
plot(Biplot_pca.m)}

PCA_PQ(IX_comp[,c(4,6:14)]

返回

雙標圖1

謝謝!

在查看並嘗試了不同的選項后,我發現添加

ggplot2::stat_ellipse(aes(group=IX_comp$Estacion))

對於上面的腳本,我得到了我想要的東西雙標圖 ,

但現在我需要更改 plot 中打印的橢圓的一些參數,並將它們的標簽添加到圖例中。

我想讓橢圓的邊框變薄,根據它們的因子分類(在IX_comp$Estacion中)為它們設置不同的 colors 並將它們的名稱和 colors 添加到圖例中。

感謝您的幫助和關注!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM