Я не могу добиться, чтобы метки переменных не пересекались с ggbiplot
(с использованием RStudio 1.1.463 и R версии 3.5.3)
Я запускаю PCA с prcomp, но я получаю перекрывающиеся метки переменной:
https://i.stack.imgur.com/EBuBx.jpg
Вот пример:
library(ggbiplot)
data(wine)
wine_subset<-subset(wine[,c(6:7,9,12)])
wine.pca <- prcomp(wine_subset, scale. = TRUE)
print(ggbiplot(wine.pca, obs.scale = 1, var.scale = 1, groups = wine.class, ellipse = TRUE, circle = TRUE))
Я попытался решить, добавив этот код из пакета ggrepel:
library(ggrepel)
+geom_text_repel(aes(labels=colnames(wine_subset)))
но он возвращает следующую ошибку:
Предупреждение. Игнорирование неизвестных эстетических элементов: метки Ошибка: эстетические элементы должны быть либо длиной 1, либо такими же, как данные (178): метки.
Мне кажется, что он пытается взять метки строк, но они мне не нужны в сюжете. Мне нужны только метки переменных.
geom_text_repel()
предназначен для устранения перекрывающихся меток, которых я здесь не вижу. Также я не понимаю, как эта функция будет работать со специализированным графиком, таким какggbiplot()
, поскольку у вас нет доступа к координатамx
иy
, которые вам нужно указать вgeom_text_repel()
. Наконец, вы не можете установить отображениеggplot2
в вектор; это должен быть столбец вашего набора данных. Если вас беспокоит, что метки перекрывают точки, вы можете рассмотреть возможность установки альфа-канала, чтобы сделать точки более прозрачными. - person jtr13   schedule 17.05.2019colnames(wine_subset)[2] <- "\nFlav"
- person jtr13   schedule 17.05.2019