我正在使用ggplot2在R中绘制一个数字。图中的图例有两行,但我想打开它们并将它放在一行中。我四处搜索,发现guide_legned()
可能是要走的路。我尝试了几种不同的方式,唯一的方法就是不会出现错误:
fig <- ggplot(data, aes(y=y, x=x, shape=z))+
geom_point(size = 4)+
scale_shape_manual(values = c(0,1,2,3,4,6))+
geom_abline('somestuff in here')+
scale_fill_continuous(guide=guide_legend(nrow=1))+
annotate('somestuff in here')+
theme_bw()+
theme(legend.title = element_blank(),
panel.grid = element_blank(),
legend.position='top',
legend.key = element_blank())
然而,传说仍然是2行。我想知道为什么guide_legend(nrow=1)
不起作用(即使没有错误)。什么是正确的方法呢?谢谢!
答案 0 :(得分:5)
您的情节中有shape
美学但没有fill
美学,因此scale_fill_continuous
不适用于此处。它是您要格式化的shape
图例。两个选项:
fig <- ggplot(data, aes(y=y, x=x, shape=z))+
geom_point(size = 4)+
scale_shape_manual(values = c(0,1,2,3,4,6), guide=guide_legend(nrow=1)+
geom_abline('somestuff in here')+
annotate('somestuff in here')+
theme_bw()+
theme(legend.title = element_blank(),
panel.grid = element_blank(),
legend.position='top',
legend.key = element_blank())
fig <- ggplot(data, aes(y=y, x=x, shape=z))+
geom_point(size = 4)+
scale_shape_manual(values = c(0,1,2,3,4,6))+
geom_abline('somestuff in here')+
annotate('somestuff in here')+
theme_bw()+
theme(legend.title = element_blank(),
panel.grid = element_blank(),
legend.position='top',
legend.key = element_blank()) +
guides(shape=guide_legend(nrow=1))