I'm guessing you have something like this in mind, but we'll see.
Using some fake data as a reproducible example:
library(ggplot2)
# fake data
DF <- data.frame(year = rep(2006:2015, 3),
grp = factor(rep(LETTERS[1:3], each = 10)),
y = rpois(30, 5))
ggplot(DF, aes(x = year, y = y, color = grp)) +
theme_bw() +
geom_rect(xmin = 2012, xmax = Inf, ymin = -Inf, ymax = Inf,
fill = "red", alpha = 0.01, show_guide = FALSE) +
geom_path(size = 1) +
scale_color_manual(values = c("firebrick", "blue", "darkorange")) +
scale_x_continuous(breaks = seq(2006, 2014, by = 2))
geom_rect() tends to look better with a white background IMO, which is
why I included theme_bw(). The background rectangle should also be
drawn first so that the lines are drawn over the rectangle and not
vice versa. For some reason, you need to set a very low value for
alpha transparency in order to see the background grid lines. The
argument show_guide = FALSE avoids drawing diagonal lines in the
legend keys.
If you want to set tighter bounds for the rectangle, change the values
of the arguments. The Inf and -Inf values allow you to extend the
rectangle to the edge of the plot region without affecting the axis
limits in each direction.
Dennis