在图例项之间添加水平 space
Add horizontal space between legend items
我在 ggplot2
的图表底部有一个图例,分两行。我需要增加项目之间的水平 space。
目前代码是:
p + theme(legend.key = element_blank(),
legend.position = "bottom",
legend.title = element_blank(),
legend.direction = "horizontal") +
guides(linetype = guide_legend(ncol = 3,keywidth=4))
但是生成的项目太接近了:
有什么建议吗?
一点技巧:
#dummy data
df <- data.frame(x=1:20,
y=runif(20),
g=rep(c("a","long1","looonger1","xx"),5))
#suffix with spaces, make them same length
df$g <- substring(paste0(df$g," "),1,15)
#plot as usual
ggplot(df,aes(x,y,linetype=g)) +
geom_line() +
theme(legend.key = element_blank(),
legend.position = "bottom",
legend.title = element_blank(),
legend.direction = "horizontal") +
guides(linetype = guide_legend(ncol = 3,keywidth=4))
我在 ggplot2
的图表底部有一个图例,分两行。我需要增加项目之间的水平 space。
目前代码是:
p + theme(legend.key = element_blank(),
legend.position = "bottom",
legend.title = element_blank(),
legend.direction = "horizontal") +
guides(linetype = guide_legend(ncol = 3,keywidth=4))
但是生成的项目太接近了:
有什么建议吗?
一点技巧:
#dummy data
df <- data.frame(x=1:20,
y=runif(20),
g=rep(c("a","long1","looonger1","xx"),5))
#suffix with spaces, make them same length
df$g <- substring(paste0(df$g," "),1,15)
#plot as usual
ggplot(df,aes(x,y,linetype=g)) +
geom_line() +
theme(legend.key = element_blank(),
legend.position = "bottom",
legend.title = element_blank(),
legend.direction = "horizontal") +
guides(linetype = guide_legend(ncol = 3,keywidth=4))