Подтвердить что ты не робот

Изменение положения/направления легенды с помощью функции opts() не влияет

Создание следующего графика приводит к тому, что легенда помещается вертикально, справа, а не снизу горизонтально, как указано в вызове opts():

dat <- data.frame(x = runif(10), y = runif(10), 
                  grp = rep(letters[1:2],each = 5))

ggplot(data = dat, aes(x = x, y = y, colour = grp)) + 
  geom_point() + 
  opts(legend.position = "bottom", legend.direction = "horizontal") + 
  theme_bw()

enter image description here

Как получить легенду в правильном месте?

4b9b3361

Ответ 1

Проблема заключается в том, что theme_bw() помещается после вызова opts() и сбрасывает некоторые значения по умолчанию. Просто поставьте theme_bw() до opts():

ggplot(data = dat, aes(x = x, y = y, colour = grp)) + 
  geom_point() + 
  theme_bw() +
  opts(legend.position = "bottom", legend.direction = "horizontal")

Примечание. Поскольку версия 0.9.2 opts была заменена на theme:

theme(legend.position = "bottom", legend.direction = "horizontal")

enter image description here