R中图例出现问题-如何在ggplot2中更改图例文本

4

我有一个带有图例的灰色图,但是图例中的标签是错误的。如果我按照建议更改图例标签,即使没有更改主题,那么我仍然回到默认颜色。肯定有更好的方法。把图例中的 "sex" 改为 "Method", "m" 是 "1", "f" 是 "2",保持图表仍然是灰色,将会是一个巨大的改进。

require(ggplot2)
counts <- c(18,17,15,20,10,20,25,13,12)
time <- c(1, 1.3, 1.1, 1, 1, 1, 1, 1.3, 1.1)
sex <- c("m","f","m","f","m","f","m","f","m")
print(myDF <- data.frame(sex, counts, time))

gTest <- ggplot(myDF, aes(counts, time, color=sex)) +
    geom_point(size = 3)+geom_smooth(method="lm", se=F) +
    ggtitle("Long-Term Gain in Speech Rate")+
    xlab("Baseline Speech Rate") +
    ylab("Mean Speech Rate Gain")

谢谢!这改变了标题

gTest + scale_colour_grey(start = .3, end = .7) + guides(color=guide_legend(title="Method")) + theme_bw()+ theme(legend.position=c(.9,.9), legend.background=element_rect(fill="white", size=0.5, linetype="solid", colour ="white"))

这是您要找的吗?gTest + scale_colour_grey(start = .3, end = .7) + guides(color=guide_legend(title="Method")) + theme_bw()+ theme(legend.position=c(.9,.9), legend.background=element_rect(fill="white", size=0.5, linetype="solid", colour ="white")) - Mike H.
那改变了标题,情节仍然是灰色的。那非常好。迈克,你知道如何更改因子名称(“m”为“1”,“f”为“2”)吗? - sparkyjump
当然,有点困惑措辞,但这里是更改图例标签和标题的代码:gTest + scale_colour_grey(start = .3, end = .7,labels=c("2","1")) + guides(color=guide_legend(title="Method")) + theme_bw()+ theme(legend.position=c(.9,.9), legend.background=element_rect(fill="white", size=0.5, linetype="solid", colour ="white")) - Mike H.
1个回答

3

为了更改图例标签,您可以编辑调用scale_colour_grey()的内容,包括一个labels=参数。要更改图例标题,您可以在guides()中指定。这应该会产生所需的��果:

gTest + scale_colour_grey(start = .3, end = .7,labels=c("2","1")) +
  guides(color=guide_legend(title="Method")) +
  theme_bw()+
  theme(legend.position=c(.9,.9),
        legend.background=element_rect(fill="white",
                                       size=0.5, linetype="solid", colour ="white"))

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接