我怎样才能使Biplot中的轴反转

时间:2018-11-21 13:54:13

标签: r plot axis pca biplot

当我绘制PCA然后绘制对应的双线图时,轴并不总是在同一方向上,就像这些图片中一样:

plot(pc...) biplot(princomp...

这些是我使用的功能:

(pc <- prcomp(dat5, center=T, retx=T, scale=T)); summary(pc)
plot(pc$x[,1:2], pch=""); text(pc$x[,1:2], cex=.5, labels=(row.names(dat5)), col=as.numeric(dat$ObCl))     
biplot(princomp(dat5, cor=T), cex=.5)

如何更改其中一个的轴方向以使其相同?

1 个答案:

答案 0 :(得分:2)

PC的符号是任意的,您可以通过将一台或多台PC乘以-1来更改它。请注意,这仅代表表示形式,具体取决于您执行的操作,例如,如果使用$rotation,则可能还需要更改相应的列。以下是iris的示例。希望这会有所帮助。

p <- prcomp(iris[, -5])
plot(p$x[, 1:2], asp=1, xlab="PC1", ylab="PC2")

enter image description here

plot(cbind(p$x[, 1], p$x[, 2]*-1), asp=1, xlab="PC1", ylab="PC2")

enter image description here