我有以下情节:
我用来生成这个图的代码是:
ggplot(df, aes(x = instance, y = total_hits))+
geom_point(size = 1)+
geom_line()+
geom_line(aes(x=df$instance, y = line1), colour="red")+
geom_vline(xintercept=805) +
geom_line(aes(x=df$instance, y = line2), colour="blue")+
geom_line(aes(x=df$instance, y = line3), colour="purple")
我想在此图中添加一个图例,以标记每一行。但是,由于我手动添加了每一行,我不知道如何添加图例。任何提示/建议?
答案 0 :(得分:29)
ggplot
真的只喜欢为具有美学映射的事物绘制传说。如果为颜色设置“代码名称”,则可以在该属性的手动比例中定义它们。例如
ggplot(df, aes(x = instance, y = total_hits))+geom_point(size = 1)+geom_line()+
geom_line(aes(x=instance, y = line1, colour="myline1")) +
geom_vline(xintercept=805)+geom_line(aes(x=df$instance, y = line2, colour="myline2"))+
geom_line(aes(x=instance, y = line3, colour="myline3")) +
scale_colour_manual(name="Line Color",
values=c(myline1="red", myline2="blue", myline3="purple"))
应该有效(未经测试,因为你根本没有提供任何数据)。无论何时你问一个问题,包括一个reproducible example都是礼貌的,所以答案者不必自己完成所有的工作来测试。