У меня возникла проблема с получением правильного цвета в легенде и контролем цвета линии для разделения линий регрессии.R ggplot контрольная точка рассеивания в легенде и цвет линии
Выход должен быть рассеянным с женщинами в виде красных квадратов, а самцы - черными точками, а легенда показывает правильный цвет, которого в настоящее время нет.
Во-вторых, линии, изображающие линейную модель, должны быть того же цвета, что и квадраты/точки. (Например, черный для мужчин и красный для женщин)
Это то, что я получил:
# R version 3.1.2
# ggplot2_1.0.1
library(ggplot2)
# Reproducable Example
x <- c(20, 14, 19, 25, 17, 17, 18, 16, 8, 10, 25)
Sex <- c(2,2,2,2,2,1,1,1,1,1,1)
y <- c(0.116790, 0.065139, 0.362140, -2.328200, -0.348110,
1.393600, -0.716200, -2.501600, 3.956400, 1.834400, -3.264200)
cordata <- data.frame(x,y,Sex)
cordata$Sex <- factor(cordata$Sex, labels=c("Males","Females"))
# Actual Plot:
ggplot(cordata, aes(x=x, y=y,shape=Sex)) +
geom_point(data= subset(cordata, cordata$Sex == "Males"),
color="black", size = 4, show_guide = TRUE) +
geom_point(data= subset(cordata, cordata$Sex == "Females"),
color="red", size = 4, show_guide = TRUE) +
scale_shape_manual(values=c(15,16)) +
guides(fill = guide_legend(override.aes = list(colour = NULL))) +
stat_smooth(aes(Sex = "Females"), method = "lm", se = FALSE,
color = "red", size = 1.5) +
stat_smooth(aes(Sex = "Males"), method = "lm", se = FALSE,
color = "black", size = 1.5)
Кто есть какие-нибудь идеи?
Извините, если это неправильно отправлено; если есть какой-то очевидный ответ где-то ... Но я не смог его найти.
спасибо, что это хорошо! – user2673238