This question already has an answer here:
- Plot two graphs in same plot in R 16 answers
I have a data set which could be defined thus:
Week <- c("2015_52", "2016_01", "2016_02", "2016_03", "2016_04")
y1 <- runif(5, 0, 1)
y2 <- runif(5, 0, 1)
y3 <- runif(5, 0, 1)
df <- data.frame(Week, y1, y2, y3)
I want to plot all three of the y's over time on the same ggplot (with manual colors and linetype for each one), but I'm new to ggplot and have not had to do this before. Trying to emulate answers to similar questions on StackOverflow is delivering errors.
For instance...
library(ggplot2)
ggplot(df, aes(x = Week, y = value, colour = variable)) +
geom_line()
...as in this question gives the error Error in eval(expr, envir, enclos) : object 'value' not found
.
But trying as in the answer to this question...
ggplot() +
geom_line(data = df,
aes(x = Week, y = y1,
color = "black", linetype = "solid")) +
geom_line(data = df,
aes(x = Week, y = y2,
color = "red", linetype = "solid")) +
geom_line(data = df,
aes(x = Week, y = y3,
color = "orange", linetype = "dashed"))
...gives three instances of the error geom_path: Each group consists of only one observation. Do you need to adjust the group
aesthetic?
. Can I get some assistance, please?