Hi, this basically is what Murphy's says: but here are some examples of what might go wrong and how to fix it when combining box plots and a jittered geom_point plot:
library(ggplot2)
# draw a boxplot with '+' symbol for outliers
p <- ggplot(mtcars, aes(factor(cyl), mpg))
p1 <- p + geom_boxplot(outlier.shape=3)
p1
# overlay with points (with horizontal jitter)
p1 + geom_point(position = position_jitter(width=0.2))
# this indeed provides duplicate outlier points
# fix duplicates, by not showing outliers in initial boxplot
p2 <- p + geom_boxplot(outlier.colour=NA)
p2 + geom_point(position = position_jitter(width=0.2))
# overlay boxplots on geom_points: points or obscured
p3 <- p + geom_point(position = position_jitter(width=0.2))
p3 + geom_boxplot(outlier.colour=NA)
# remove fill of box plots to uncover obscured points:
p3 + geom_boxplot(outlier.colour=NA, fill = NA)
Best,
Richard