ggplot:设置具有多个属性的图例标题
ggplot: setting title of legend with multiple attributes
我想更改使用以下代码生成的图例的标题。请注意,我知道我可以将 data.frame 和美学直接放在 ggplot() 函数调用中,但在这个示例中我没有这样做,因为在我的应用程序中,我需要具有不同数据集和美学的多层。
d = data.frame(t=rep(1:10,2),
value = rep(1:2,each=10),
dose_mpk = factor(rep(1:2,each=10)))
g = ggplot()
a = aes(x=t,y=value,group=dose_mpk,color=dose_mpk,shape=dose_mpk)
g = g + geom_point(data=d,a)
g = g + geom_line(data=d,a)
print(g)
我不明白更改图例标题的正确方法。我尝试了下面的代码,它给出了下面的情节,这不是我想要的 - 我只是想更改标题,而不是创建双重图例。由于我原来的图例涉及形状和颜色,我不确定如何更改此 "combined" 标题。我该怎么办?
g + guides(color = guide_legend("dose (mg/kg)"))
如果图例有不同的标题,则不能合并。只需将两个图例设置为相同的标题即可:
g + guides(color = guide_legend("dose (mg/kg)"),
shape = guide_legend("dose (mg/kg)"))
代替guides()
,你也可以使用labs()
,:
g + labs(color = "dose (mg/kg)", shape = "dose (mg/kg)")
我想更改使用以下代码生成的图例的标题。请注意,我知道我可以将 data.frame 和美学直接放在 ggplot() 函数调用中,但在这个示例中我没有这样做,因为在我的应用程序中,我需要具有不同数据集和美学的多层。
d = data.frame(t=rep(1:10,2),
value = rep(1:2,each=10),
dose_mpk = factor(rep(1:2,each=10)))
g = ggplot()
a = aes(x=t,y=value,group=dose_mpk,color=dose_mpk,shape=dose_mpk)
g = g + geom_point(data=d,a)
g = g + geom_line(data=d,a)
print(g)
我不明白更改图例标题的正确方法。我尝试了下面的代码,它给出了下面的情节,这不是我想要的 - 我只是想更改标题,而不是创建双重图例。由于我原来的图例涉及形状和颜色,我不确定如何更改此 "combined" 标题。我该怎么办?
g + guides(color = guide_legend("dose (mg/kg)"))
如果图例有不同的标题,则不能合并。只需将两个图例设置为相同的标题即可:
g + guides(color = guide_legend("dose (mg/kg)"),
shape = guide_legend("dose (mg/kg)"))
代替guides()
,你也可以使用labs()
,:
g + labs(color = "dose (mg/kg)", shape = "dose (mg/kg)")