Solved – What are the four axes on PCA biplot

biplotpcar

When you construct a biplot for a PCA analysis, you have principal component PC1 scores on the x-axis and PC2 scores on the y-axis. But what are the other two axes to the right and the top of the screen?

Best Answer

Do you mean, e.g., in the plot that the following command returns?

biplot(prcomp(USArrests, scale = TRUE))

biplot USA arrests

If yes, then the top and the right axes are meant to be used for interpreting the red arrows (points depicting the variables) in the plot.

If you know how the principal component analysis works, and you can read R code, the code below shows you how the results from prcomp() are initially treated by biplot.prcomp() before the final plotting by biplot.default(). These two functions are called in the background when you plot with biplot(), and the following modified code excerpt is from biplot.prcomp().

x<-prcomp(USArrests, scale=TRUE)
choices = 1L:2L
scale = 1
pc.biplot = FALSE
scores<-x$x
lam <- x$sdev[choices]
n <- NROW(scores)
lam <- lam * sqrt(n)
lam <- lam^scale
yy<-t(t(x$rotation[, choices]) * lam)
xx<-t(t(scores[, choices])/lam)
biplot(xx,yy)

Shortly, in the example above, the the matrix of variable loadings (x$rotation) is scaled by the standard deviation of the principal components (x$sdev) times square root of the number of observations. This sets the scale for the top and right axes to what is seen on the plot.

There are other methods to scale the variable loadings, also. These are offered e.g. by the R package vegan.