我想更改使用下面的代码生成的图例的标题。请注意,我知道我可以将 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)
Run Code Online (Sandbox Code Playgroud)
我不明白更改图例标题的正确方法。我尝试了下面的代码,它给出了下面的图,这不是我想要的 - 我只是想更改标题,而不是创建双图例。由于我原来的图例既涉及形状又涉及颜色,因此我不确定如何更改此“组合”标题。我应该怎么办?
g + guides(color = guide_legend("dose (mg/kg)"))
Run Code Online (Sandbox Code Playgroud)
如果图例的标题不同,则不能合并。只需将两个图例设置为相同的标题即可:
g + guides(color = guide_legend("dose (mg/kg)"),
shape = guide_legend("dose (mg/kg)"))
Run Code Online (Sandbox Code Playgroud)
除了 之外guides(),您还可以使用labs(),:
g + labs(color = "dose (mg/kg)", shape = "dose (mg/kg)")
Run Code Online (Sandbox Code Playgroud)