Сюжет легенды для перемещения влево ggplot - PullRequest
2 голосов
/ 02 апреля 2020

Мне нравится перемещать легенду чуть левее, но я не понимаю, как это сделать. Во-вторых, я также хочу уменьшить расстояние между меткой оси и легендой

Можете ли вы предложить что-то

приведенный ниже код, который я использую

Изображение график находится по ссылке ниже https://i.stack.imgur.com/GwvkR.jpg

"подсказка"

ggplot(Q6_m, aes( choice,temp,fill=Answer ))+
  geom_bar(position = position_stack(reverse = TRUE), stat="identity") +
  coord_flip() +
  xlab("") +
  ylab("Number of responses") +
  scale_fill_brewer(type = "div") +
  theme(axis.text=element_text(size=8),
        axis.title=element_text(size=8,face="bold"), legend.title = element_blank(),
        legend.text=element_text(size=7)) +
  ggtitle("Q6:Rate your ability to perform the following procedures WITHOUT attending assistance?")+
  theme(plot.title = element_text(color = "black", size = 7.5, face = "bold", hjust = 1))+
  facet_wrap(~gender,scales = "free_x")+
  theme(legend.position="bottom", legend.direction  = "horizontal",legend.key.size = unit(0.5,"line")
        )

1 Ответ

1 голос
/ 03 апреля 2020

Вы должны использовать legend.justification, чтобы получить легенду с левой стороны графика, и legend.margin, чтобы уменьшить расстояние между метками оси и легендой:

ggplot(iris, aes(x = Species, y = Sepal.Length, fill = Species))+
  geom_boxplot()+
  theme(legend.position = "bottom",
        legend.justification = c(0,1),
        legend.margin = margin(t = -15, r = 0, b = 0, l = 0, unit = "pt"))

enter image description here

Это отвечает на ваш вопрос?

...