R 更改ggplot图例的布局

R 更改ggplot图例的布局,r,ggplot2,R,Ggplot2,我很好奇,是否可以在不重写build_legend函数的情况下更改ggplot图例的布局 例如: 我想要一个2*2的布局 a b c d 而不是正常的1*4或4*1布局 a B C d 或 abcd 非常感谢, MK我实际上不认为这在ggplot2中是可能的,您实际上只有两个选项—水平或垂直。如果你想创造一些更为奇特的东西,你必须自己创造一个具有相同配色方案的子地块,调整大小并将其覆盖到你的地块上(我会设想在任何合适的地方放置一个小的facet_grid()) Kohske已经发布了该问题的解决

我很好奇,是否可以在不重写build_legend函数的情况下更改ggplot图例的布局

例如:

我想要一个2*2的布局

a b
c d

而不是正常的1*4或4*1布局

a B C d

a
b
c
d

非常感谢,


MK

我实际上不认为这在ggplot2中是可能的,您实际上只有两个选项—水平或垂直。如果你想创造一些更为奇特的东西,你必须自己创造一个具有相同配色方案的子地块,调整大小并将其覆盖到你的地块上(我会设想在任何合适的地方放置一个小的facet_grid())


Kohske已经发布了该问题的解决方案,尽管它在下一版本的ggplot之前将不可用

qplot(1:4, 1:4, colour = letters[1:4]) + guides(colour = guide_legend(nrow = 2, byrow = T))

请不要交叉发帖-这会浪费人们的时间来回答其他地方可能已经回答过的问题。谢谢你,哈德利,我认为这只限于邮件列表之间。我将回答我自己的问题(Kohske的解决方案和对他的信任),以便其他不在邮件列表上的人可以看到它,但是我回答问题的时间有限制,所以我无法发布。链接到Kohske对ggplot2列表中相同问题的回答:感谢competent_tech和Brian的编辑和链接。我会尽我最大的努力保持我的代码和格式符合标准。干杯
qplot(1:4, 1:4, colour = letters[1:4]) + guides(colour = guide_legend(nrow = 2, byrow = T))