为了账号安全,请及时绑定邮箱和手机立即绑定

如何在ggplot中更改图例标题

如何在ggplot中更改图例标题

智慧大石 2019-08-30 14:51:48
我有如下图。它是使用此命令创建的:library(ggplot2)df <- data.frame(cond = factor(rep(c("A", "B"), each = 200)),                  rating = c(rnorm(200), rnorm(200, mean=.8)))ggplot(df, aes(x=rating, fill=cond)) + geom_density(alpha = .3) +xlab("NEW RATING TITLE") +ylab("NEW DENSITY TITLE")接下来我要做的就是将图例标题从cond修改为NEW LEGEND TITLE。所以我所做的只是添加以下行添加上面代码的结尾:+labs(colour="NEW LEGEND TITLE")但它不起作用。什么是正确的方法呢?
查看完整描述

3 回答

?
元芳怎么了

TA贡献1798条经验 获得超7个赞

这应该工作:


p <- ggplot(df, aes(x=rating, fill=cond)) + 

           geom_density(alpha=.3) + 

           xlab("NEW RATING TITLE") + 

           ylab("NEW DENSITY TITLE")

p <- p + guides(fill=guide_legend(title="New Legend Title"))

(或者)


p + scale_fill_discrete(name = "New Legend Title")


查看完整回答
1 反对 回复 2019-08-30
?
jeck猫

TA贡献1909条经验 获得超7个赞

我没有深入研究这个,但因为你在ggplot()中使用了fill = cond,


 + labs(color='NEW LEGEND TITLE') 

可能没有用。然而,更换颜色的填充,它的作品!


+ labs(fill='NEW LEGEND TITLE') 

这在ggplot2_2.1.0中对我有用


查看完整回答
反对 回复 2019-08-30
?
萧十郎

TA贡献1815条经验 获得超13个赞

由于你有两个密度,我想你可能想要设置自己的颜色scale_fill_manual。


如果是这样,你可以做到:


df <- data.frame(x=1:10,group=c(rep("a",5),rep("b",5)))


legend_title <- "OMG My Title"


ggplot(df, aes(x=x, fill=group)) + geom_density(alpha=.3) +   

    scale_fill_manual(legend_title,values=c("orange","red"))


查看完整回答
反对 回复 2019-08-30
  • 3 回答
  • 0 关注
  • 6901 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信