ggplot垂直证明传奇

use*_*980 5 r ggplot2

我一直在看这个问题.我的传说已经不在图表区域了.有没有办法在ggplot2中垂直对齐传奇?

library(ggplot2)
df <- data.frame(x = 1:30, y = 1:30, color = letters[1:30])
ggplot(df, aes(x, y)) +
    geom_point(aes(colour = color)) +
    guides(col = guide_legend(nrow = 30))
Run Code Online (Sandbox Code Playgroud)

Nic*_*ton 14

legend.direction("垂直"/"水平")应该工作:

library(ggplot2)
df <- data.frame(x = 1:30, y = 1:30, color = letters[1:30])
ggplot(df, aes(x, y)) +
    geom_point(aes(colour = color)) +
    theme(legend.direction='horizontal')
Run Code Online (Sandbox Code Playgroud)

您可能还想将其与legend.box("水平"/"垂直")组合.

如果要控制图例的绝对位置,请添加:

theme(legend.direction = "vertical",
legend.box = "horizontal",
legend.position = c(0.025,0.975),
legend.justification = c(0, 1))
Run Code Online (Sandbox Code Playgroud)

例如,将图例放在图表的左上角.