I would like to plot rectangles but I have an x axis that\'s discrete values. How do I set the xmin and xmax values to start at a point between the discrete values?
You can try:
ggplot(data = df) +
geom_rect(data = df, aes(x = x, y=y), xmin = as.numeric(df$x[[2]]) - 0.3,
xmax = as.numeric(df$x[[3]]) + 0.3,
ymin = 0, ymax = 2)
This works, as if you call xmin and xmax etc outside of the aes
call, you can use whatever you want. The factor levels are used in the plot to plot them out, so as.numeric
will make sure you get the right one.