I'm using visual studio with R version 3.5.1 where I tried to plot legend to the graph.
 f1 = function(x) {
     return(x+1)}
 x1 = seq(0, 1, by = 0.01)
 data1 = data.frame(x1 = x1, f1 = f1(x1), F1 = cumtrapz(x1, f1(x1)) )
However, when I tried to plot it, it never give me a legend! For example, I used the same code in this (Missing legend with ggplot2 and geom_line )
 ggplot(data = data1, aes(x1)) +
     geom_line(aes(y = f1), color = "1") +
     geom_line(aes(y = F1), color = "2") +
     scale_color_manual(values = c("red", "blue")) 
I also looked into (How to add legend to ggplot manually? - R ) and many other websites in stackoverflo, and I have tried every single function in https://www.rstudio.com/wp-content/uploads/2016/11/ggplot2-cheatsheet-2.1.pdf
i.e.
     theme(legend.position = "bottom")
     scale_fill_discrete(...)
     group
     guides()
     show.legend=TRUE
I even tried to use the original plot() and legend() function. Neither worked.
I thought there might be something wrong with the dataframe, but I split them(x2,f1,F1) apart, it still didn't work.
I thought there might be something wrong with IDE, but the code given by kohske acturally plotted legend!
 d<-data.frame(x=1:5, y1=1:5, y2=2:6)
 ggplot(d, aes(x)) + 
   geom_line(aes(y=y1, colour="1")) + 
   geom_line(aes(y=y2, colour="2")) +
   scale_colour_manual(values=c("red", "blue"))
What's wrong with the code?
 
    