gpt4 book ai didi

r - 在网格中排列 ggplot2 图例项

转载 作者:行者123 更新时间:2023-12-04 10:56:51 25 4
gpt4 key购买 nike

我有一个图例,其中包含 4 个不同的条目,我想将它们排列在 2x2 网格中,而不是水平或垂直排列。我正在提取图例以供单独使用,这就是为什么我需要这种有点不寻常的安排。有任何想法吗?

下面的代码生成图例,其中所有条目垂直位于单个列中:

require(ggplot2)
library(grid)
library(gridExtra)

dat <- data.frame(x=c(1,2,1,2,1,2,1,2),y=c(1,2,3,4,2,3,4,5),color=factor(c("a","a","b","b","c","c","d","d")))
p = ggplot(dat)
p = p + geom_line(aes(dat$x,dat$y,color=dat$color))
p = p + scale_colour_manual (values=dat$color,name="")
#print(p)

g_legend<-function(a.gplot){
tmp <- ggplot_gtable(ggplot_build(a.gplot))
leg <- which(sapply(tmp$grobs, function(x) x$name) == "guide-box")
legend <- tmp$grobs[[leg]]
return(legend)}

legend <- g_legend(p)
grid.arrange(legend)

最佳答案

尝试添加 guides(colour = guide_legend(nrow = 2))到你的情节。

关于r - 在网格中排列 ggplot2 图例项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12323416/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com