我想知道是否有可能用ggplot2绘制pca biplot结果.假设我想用ggplot2显示以下双标图结果
fit <- princomp(USArrests, cor=TRUE)
summary(fit)
biplot(fit)
Run Code Online (Sandbox Code Playgroud)
任何帮助将受到高度赞赏.谢谢
我正在尝试从以下数据创建结构图:
mydf <- data.frame ( group = rep (1:5, each = 20), z = rnorm (20, 10, 1),
x = c(rnorm (20, 2, 0.5), rnorm (20, 2, 0.5),
rnorm (20, 9, 0.5), rnorm (20, 9, 0.5),rnorm (20, 5, 0.5)),
y = c(rnorm (20, 2, 0.5), rnorm (20, 9, 0.5), rnorm (20, 2, 0.5),
rnorm (20, 9, 0.5), rnorm (20, 2, 0.5)))
means <- aggregate(. ~ group, data = mydf, mean)
gmx <-mean (mydf$x)
gmy <- mean (mydf$y)
library(ggplot2)
ggplot(mydf, aes(x, …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用prcomp和绘制主成分分析ggbiplot.我正在获取单位圆外的数据值,并且在调用之前无法重新调整数据prcomp,我可以将数据约束到单位圆.
data(wine)
require(ggbiplot)
wine.pca=prcomp(wine[,1:3],scale.=TRUE)
ggbiplot(wine.pca,obs.scale = 1,
var.scale=1,groups=wine.class,ellipse=TRUE,circle=TRUE)
Run Code Online (Sandbox Code Playgroud)
我在调用之前通过减去平均值并除以标准偏差来尝试缩放prcomp:
wine2=wine[,1:3]
mean=apply(wine2,2,mean)
sd=apply(wine2,2,mean)
for(i in 1:ncol(wine2)){
wine2[,i]=(wine2[,i]-mean[i])/sd[i]
}
wine2.pca=prcomp(wine2,scale.=TRUE)
ggbiplot(wine2.pca,obs.scale=1,
var.scale=1,groups=wine.class,ellipse=TRUE,circle=TRUE)
Run Code Online (Sandbox Code Playgroud)
ggbiplot 包安装如下:
require(devtools)
install_github('ggbiplot','vqv')
Run Code Online (Sandbox Code Playgroud)
输出任一代码块:

根据@Brian Hanson在下面的评论,我正在添加一个反映我想要获得的输出的附加图像.
