Выравнивание и выравнивание текста geom_label_repel

Есть ли возможный обходной путь, чтобы выровнять по левому краю текстовую метку, созданную geom_label_repel (или же geom_text_repel) в примере ниже, где весь текст помещен с положительным nudge_x значение и y-скорректированная позиция в direction параметр? В настоящее время поведение по умолчанию - выравнивание текста по центру:

library(ggplot2)
library(ggrepel)

ggplot(mtcars, aes(x=factor(gear), y=mpg, colour=factor(gear))) + 
  geom_point(size=3) + 
  facet_wrap(~cyl, labeller=label_both) + 
  scale_x_discrete(expand=c(0, 1.5)) + 
  geom_label_repel(aes(label=rownames(mtcars)), 
               size=3, segment.size=0.25, nudge_x=0.5, direction="y")

Я хочу подражать левому выравниванию, которое возможно в geom_label (или же geom_text) установив hjust=0 как видно из примера ниже, при этом можно автоматически отталкивать метки в направлении y:

ggplot(mtcars, aes(x=factor(gear), y=mpg, colour=factor(gear))) + 
  geom_point(size=3) + 
  facet_wrap(~cyl, labeller=label_both) +
  scale_x_discrete(expand=c(0, 1.5)) + 
  geom_label(aes(label=rownames(mtcars)), size=3, nudge_x=0.2, hjust=0)

Отредактировано: как взломать, возможно ли будет встроить hjust (и vjust) в ggrepel?

1 ответ

За 4 года с тех пор, как ОП опубликовал этот вопрос, hjust=вроде добавили в ggrepelупаковка:

      library(ggplot2)
library(ggrepel)

ggplot(mtcars, aes(x=factor(gear), y=mpg, colour=factor(gear))) + 
  geom_point(size=3) + 
  facet_wrap(~cyl, labeller=label_both) + 
  scale_x_discrete(expand=c(0, 1.5)) + 
  geom_label_repel(
    aes(label=rownames(mtcars)), hjust=0,
    size=3, segment.size=0.25, nudge_x=0.5, direction="y")

Другие вопросы по тегам