2

我正在尝试可视化包含 87 个变量的 PCA。

prc <-prcomp(df[,1:87], center = TRUE, scale. = TRUE)
ggbiplot(prc, labels = rownames(df[,1:87]), var.axes = TRUE)

当我创建双标图时,许多向量相互重叠,因此无法读取标签。我想知道是否有任何方法一次只显示一些标签。例如,我认为如果我可以创建几个单独的双标图,每个双标图只显示向量上标签的一个子集,那将会很有用。

这个问题似乎密切相关,但我不知道它是否转化为最新版本的 ggbiplot。我也不确定如何修改原始功能。

4

1 回答 1

4

一个潜在的解决方案是使用该factoextra软件包来可视化您的 PCA 结果。该fviz_pca_biplot()函数包含一个repel参数。当repel = TRUE绘图标签展开以最小化重叠时。文档中还select.var提到了一些选项,例如select.var = list(contrib=5)仅显示 5 个最具影响力的向量。还有一个select.var = list(name)选项似乎允许指定您想要显示的特定变量子集。

# read data
df <- mtcars[, c(1:7,10:11)]

# perform PCA
library("FactoMineR")
res.pca <- PCA(df, graph = FALSE)

# visualize
library(factoextra)
fviz_pca_biplot(res.pca, repel = TRUE, select.var = list(contrib = 5))

仅显示 5 个向量的双图

于 2020-01-22T22:58:23.620 回答