У меня есть кадр данных, который выглядит примерно как df, ниже. Это близко к тому, что мне нужно, но одна легенда печатает для всех четырех исходных категорий группировки, а не только для двух. Ниже я хотел бы иметь одну легенду, которая отражает линии для «красных» и «синих» категорий группировки df1, а затем отдельную легенду, которая отражает линии для категорий «зеленого» и «оранжевого» группированияКак получить отдельные легенды для отдельных слоев в ggplot?
Мотивация в два раза. Во-первых, я хотел бы создать сюжет, который показывает, что может обеспечить цвет для онлайн-публикации и быть информативным черно-белым для печатной версии. Во-вторых, у моего реального набора данных есть 5 категорий группировки, и действительно только два (красный и синий) являются наиболее информативными.
Итак, мое решение, которое я пытаюсь воспроизвести ниже, - это выбрать красный и синий, сделать эти линии толстыми, изменить тип линий одного и сделать их красными и синими цветами. И тогда я бы хотел добавить второй слой с другими, менее информативными категориями и сделать их тоньше и изменить их по типам линий. Благодарю.
test<-rep(c('red', 'blue', 'green', 'orange'), 6)
test1<-rnorm(24, mean=10, sd=2)
test2<-seq(1,24,2)
df<-data.frame(test, test1, test2)
df1<-subset(df, test=='red'|test=='blue')
df2<-subset(df, test!='red'&test!='blue')
library(ggplot2)
test.plot <- ggplot(df1, aes(x=test2, y=test1, group=test)) + geom_line(aes(col=test,linetype=test), size=2) + scale_color_manual(values=c('red'='red3', 'blue'='darkblue'))
test.plot + geom_line(data=df2, aes(x=test2, y=test1, linetype=test))
Но вы хотите, отдельные легенды, или одна легенда? – Heroka