R ggplot图例列表大于第页

R ggplot图例列表大于第页,r,ggplot2,adobe-illustrator,R,Ggplot2,Adobe Illustrator,我在R中有一个绘图,其中有大量的样本组,因此图例大于页面大小并被截断。我知道这不是出版物的质量,但我需要知道能够在Illustrator中创造传奇的颜色 有没有办法使页面大小更大,或者以某种方式更改图例格式,以便我可以包含所有键?这样做的原因是,我可以在Illustrator中打开PDF,并获得每个样本的颜色,以创建一个新的图例,供发布。我原以为可能有一个剪辑遮罩,并且实际的图例会被保留下来,但当我在Illustrator中打开时,图例实际上是在页面末尾1处被剪切的 正如在下面的评论中所建议的

我在R中有一个绘图,其中有大量的样本组,因此图例大于页面大小并被截断。我知道这不是出版物的质量,但我需要知道能够在Illustrator中创造传奇的颜色

有没有办法使页面大小更大,或者以某种方式更改图例格式,以便我可以包含所有键?这样做的原因是,我可以在Illustrator中打开PDF,并获得每个样本的颜色,以创建一个新的图例,供发布。我原以为可能有一个剪辑遮罩,并且实际的图例会被保留下来,但当我在Illustrator中打开时,图例实际上是在页面末尾1处被剪切的


正如在下面的评论中所建议的那样,我给了nrow一个尝试,这有助于打破传奇,但现在整个页面只是传奇

ggplot(purine.n, aes(x=variable, y=value, colour=metabolite_gene, shape=variable))
+geom_abline(slope=0)
+geom_point(size=4, position=position_dodge(width=0.08))
+scale_y_continuous(limit=c(-3.5,5.5), breaks=c(-3,-2,-1,0,1,2,3,4,5))
+scale_shape_manual(values=c(16,17,17), guide=F)
+theme_bw()
+theme(legend.key=element_blank(), legend.key.size=unit(1,"point"))
+guides(colour=guide_legend(nrow=16))

正如评论中所建议的那样,
nrow
是我问题的答案。我必须调整该值以获得适合我的图例的正确行数。下面是完成的代码。我还需要做更多的调整,比如改变页面大小以使事情看起来更好,但这超出了这个问题的范围

ggplot(data.n, aes(x=variable, y=value, colour=metabolite_gene, shape=variable))
+geom_abline(slope=0)+geom_point(size=4, position=position_dodge(width=0.08))
+scale_y_continuous(limit=c(-3.5,5.5), breaks=c(-3,-2,-1,0,1,2,3,4,5))
+scale_shape_manual(values=c(16,17,17), guide=F)
+theme_bw()
+theme(legend.key=element_blank(), legend.key.size=unit(1,"point"))
+guides(colour=guide_legend(nrow=30))

使用参数有帮助吗?(imo(fwiw)有这么多的因素/颜色不会产生非常丰富的情节/图例)您需要为每个类别使用不同的颜色吗?除非分类是有序的,否则这可能很难让人有效地阅读。你可能想找出一种区分类别的不同方法。谢谢,这导致了这一点,但不幸的是,这并没有解决问题。我认为你指出的是正确的方向!我已经更新了这个问题以反映你的建议。@kennethPhough,ggplot在涉及非直观的配色方案时有点糟糕。您可以使用
scale\u color\u manual
,并辅以一些颜色处理功能来使用它们
hsv2col
col2hsv
在这种情况下可能有用。@user20650是的,谢谢!rnow属性起作用了!当您有颜色和形状的指南时,这也起作用吗?我希望每个都有一行(因此,我只需要2行,而不是30行,但我不知道如何做到这一点。)