Проблема с легендой в R - как изменить текст легенды в ggplot2

У меня есть сюжет в сером цвете с легендой внутри сюжета. Однако метки в легенде неверны. Если я последую совету изменить метки легенды, даже не меняя тему, то я каким-то образом вернусь к цветам по умолчанию. Должен быть лучший способ. «секс» в легенде как «Метод», «м» — «1» и «ф» — «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"))

person sparkyjump    schedule 08.02.2017    source источник
comment
Это то, что вы ищете? 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"))   -  person Mike H.    schedule 08.02.2017
comment
Это меняет название, а сюжет по-прежнему серый. Очень хорошо. Майк, ты знаешь об изменении названий факторов (m равно 1 и f равно 2)?   -  person sparkyjump    schedule 08.02.2017
comment
Конечно, меня немного смутила формулировка, но вот код для изменения меток легенды + заголовок: 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"))   -  person Mike H.    schedule 08.02.2017


Ответы (1)


Чтобы изменить метки легенды, вы можете отредактировать вызов 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"))

введите здесь описание изображения

person Mike H.    schedule 08.02.2017