为复杂的图构建手动图例

我无法弄清楚如何为该图手动设置图例。我真正想要的只是一个简单的图例,该图例使用三种颜色并在每种颜色旁边都有一个名称。


http://img.mukewang.com/5d9bec570001d50305510475.jpg

当前代码如下:


a <-c("S1","S2","S3","S4","S5","S6","S7","S8","S9") #names

b <-c(0.23,0.26,0.55,0.56,0.36,0.23,0.18,0.06,0.04) #mean t0

c <-c(0.64,0.6,0.81,1.4,0.89,0.55,0.48,0.22,0.09) #mean t1

d <-c(0.20,0.23,0.52,0.53,0.33,0.20,0.15,0.04,0.03) #SD low t0

e <-c(0.26,0.29,0.58,.59,0.39,0.26,0.21,0.08,0.05) #SD high t0

f <-c(0.67,0.63,0.86,1.44,0.93,0.59,0.51,0.25,0.10) #SD high t1

g <-c(0.61,0.57,0.78,1.36,0.85,0.53,0.45,0.19,0.08) #SD low t1

h <-c(0.41,0.34,0.26,0.84,0.53,0.32,0.30,0.16,0.05) #absolute change


data <- data.frame(a,b,c,d,e,f,g,h)


ggplot(data=data,aes(a)) + 

  geom_bar(stat="identity", aes(y=h),fill="#62c76b",colour="#333333")+ #green

  geom_line(aes(y=b,group=1),size=1.0,colour="#f04546") +   #red

  geom_point(aes(y=b),size=3, colour="#f04546") +           #red

  geom_errorbar(aes(ymin=d, ymax=e), colour="#f04546", width=0.1, size=.8) + 

  geom_line(aes(y=c,group=1),size=1.0,colour="#3591d1") +   #blue 

  geom_point(aes(y=c),size=3, colour="#3591d1") +           #blue

  geom_errorbar(aes(ymin=f, ymax=g), colour="#3591d1", width=0.1, size=.8) + 

  ylab("Symptom severity") + xlab("PHQ-9 symptoms") +

  ylim(0,1.6) +

  theme_bw() +

  theme(axis.title.x = element_text(size = 15, vjust=-.2)) +

  theme(axis.title.y = element_text(size = 15, vjust=0.3))


鸿蒙传说
浏览 620回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP