Биплот корреляции и расстояния с использованием автоплота?
С примером, предоставленным R (USArrests), я хотел бы спросить, может ли кто-нибудь сказать мне, что вызывает масштабирование в автоплоте? Я знаком с биплотом расстояния и корреляции, как описано в Borcard et al. (2011). Функция autoplot делает биплот более привлекательным, но я не могу найти, как вы просто определяете расстояние между биплотом типа расстояния и корреляции, используя функцию.
# Distance biplot (scaling = 1)
biplot(prcomp(USArrests, scale = TRUE), scale=0)
# correlation biplot (scaling =2)
biplot(prcomp(USArrests, scale = TRUE), pc.biplot=TRUE)
# using autoplot there are several options:
library(ggfortify)
ggplot2::autoplot(stats::prcomp(USArrests, scale=TRUE), pc.biplot=TRUE, label = TRUE, loadings.label = TRUE)
# I assume this is equal to the correlation biplot
ggplot2::autoplot(stats::prcomp(USArrests, scale=TRUE), scale=0, label = TRUE, loadings.label = TRUE)
ggplot2::autoplot(stats::prcomp(USArrests, scale=TRUE), scale=1, label = TRUE, loadings.label = TRUE)
ggplot2::autoplot(stats::prcomp(USArrests, scale=TRUE), scale=2, label = TRUE, loadings.label = TRUE)
Могу ли я просто построить расстояние (масштабирование = 1), используя автоплот?
1 ответ
Да,
ggplot2::autoplot(stats::prcomp(USArrests, scale = TRUE), scale = 0, label = TRUE, loadings.label = TRUE)
а также
biplot(prcomp(USArrests, scale = TRUE), scale = s)
дать аналогичные результаты для 0 <= s <= 1. См. stats:::biplot.prcomp
а также ggfortify:::autoplot.prcomp
убедить себя. В частности, обе функции имеют (следующее из stats:::biplot.prcomp
)
lam <- x$sdev[choices]
n <- NROW(scores)
lam <- lam * sqrt(n)
lam <- lam^scale
biplot.default(t(t(scores[, choices])/lam), t(t(x$rotation[,
choices]) * lam), ...)
которая объясняет роль scale
, Также см ?ggbiplot
а также ?autoplot.prcomp
,