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

Легенда ggplot2 до нижней и горизонтальной

Как я могу переместить легенду ggplot2 в нижней части графика и повернуть ее горизонтально?

Пример кода:

library(reshape2) # for melt
df <- melt(outer(1:4, 1:4), varnames = c("X1", "X2"))
p1 <- ggplot(df, aes(X1, X2)) + geom_tile(aes(fill = value))
p1 + scale_fill_continuous(guide = guide_legend())

Желаемый (приблизительный) результат: enter image description here

4b9b3361

Ответ 1

Если вы хотите переместить позицию легенды, используйте следующий код:

library(reshape2) # for melt
df <- melt(outer(1:4, 1:4), varnames = c("X1", "X2"))
p1 <- ggplot(df, aes(X1, X2)) + geom_tile(aes(fill = value))
p1 + scale_fill_continuous(guide = guide_legend()) +
    theme(legend.position="bottom")

Это даст вам желаемый результат. Legend at bottom

Ответ 2

Это не дает вам именно то, о чем вы просите, но по крайней мере поместите цвета вместе:

+theme(legend.position="bottom",legend.direction="vertical")