2016-09-28 112 views
0

如何为标题为“工作单”的geom_segement情节添加标题,标题下方有文字“类型1”的红线和文字为“类型”的蓝线2" ?将图例添加到geom_segement

谢谢。

df = data.frame(time1=as.POSIXct(c("2012-04-04 09:23:33","2012-04-04 11:33:55")), 
        time2=as.POSIXct(c("2012-04-04 10:05:04","2012-04-04 13:42:24")), 
        y1=c(1,2), 
        y2=c(1,2), 
        color = c("red","blue")) 
ggplot(df) + geom_segment(aes(x = time1, y = y1, xend = time2, yend = y2), 
      colour= df$color, size = 4, data = df) 

回答

2

地图分组变量coloraes和设置的名称,价值,休息和标签scale_color_manual

ggplot(df) + 
    geom_segment(aes(x = time1, y = y1, xend = time2, yend = y2, color = color), 
       size = 4, data = df) + 
    scale_color_manual(name = "work order", values = c("blue", "red"), 
        breaks = c("red", "blue"), labels = c("Type 1", "Type 2")) 

你也可以使用scale_color_identity,它允许跳过值的设置,但随后你需要包括guide = "legend"因为它默认为"none"

ggplot(df) + 
    geom_segment(aes(x = time1, y = y1, xend = time2, yend = y2, color = color), 
       size = 4, data = df) + 
    scale_color_identity(name = "work order", guide = "legend", 
        breaks = c("red", "blue"), labels = c("Type 1", "Type 2")) 

enter image description here