我想将我的ggplot2图例移动到角落,但而不是在剧情本身内部。所以它应该仍然在边缘,但不在中心。我发现的唯一选择是选择“顶部”,“右侧”等,或者使用内的自定义坐标。ggplot2:将图例移动到角落,但保持边缘?
因此,例如,采取这一形象:
和想象滑动的传说从这里目前是在右下角直降。
例如,我尝试将图例位置设置为c(12, 2)
,但它只是消失。
将它设置为“正确”是当前图像的内容,但我需要将图例向下滑动到“右下”。
我想将我的ggplot2图例移动到角落,但而不是在剧情本身内部。所以它应该仍然在边缘,但不在中心。我发现的唯一选择是选择“顶部”,“右侧”等,或者使用内的自定义坐标。ggplot2:将图例移动到角落,但保持边缘?
因此,例如,采取这一形象:
和想象滑动的传说从这里目前是在右下角直降。
例如,我尝试将图例位置设置为c(12, 2)
,但它只是消失。
将它设置为“正确”是当前图像的内容,但我需要将图例向下滑动到“右下”。
您可以展开绘图边距,然后将图例位置设置到绘图外的某个位置。
创建数据:
dat = data.frame(x=1:10, y=10:1, type=rep(c('a', 'b'), each=5))
使用在theme
的plot.margin
和legend.position
元素。首先创建一个unit
对象与你的利润:
margins = unit(c(1, 4, 1, 1), 'lines')
然后调用ggplot与利润率和图例位置。
ggplot(dat, aes(x, y, color=type)) +
geom_point() +
theme(plot.margin=margins,
legend.position=c(1.075, 0))
(图例位置通常设定在0和1之间(使用归一化的父坐标),而不是实际的x和情节的y坐标。)
我试过你的代码。对于边距部分,我得到: 错误:无法找到函数“unit” **编辑**:原来你需要附加grid包才能使用unit命令。 ! – jsuprr
难道是可接受的扩大x轴向上到12与(scale_x_continuous()和使用额外的空间? – lawyeR
创意,但没有。它需要足够的光泽,以副总裁的眼睛。 – jsuprr