Por el bien de la posteridad aquí es una solución más flexible círculo usando anotar y geom_ribbon que apoya a llenar, el color, el alfa y el tamaño.
gg_circle <- function(r, xc, yc, color="black", fill=NA, ...) {
x <- xc + r*cos(seq(0, pi, length.out=100))
ymax <- yc + r*sin(seq(0, pi, length.out=100))
ymin <- yc + r*sin(seq(0, -pi, length.out=100))
annotate("ribbon", x=x, ymin=ymin, ymax=ymax, color=color, fill=fill, ...)
}
square <- ggplot(data.frame(x=0:1, y=0:1), aes(x=x, y=y))
square + gg_circle(r=0.25, xc=0.5, yc=0.5)
square + gg_circle(r=0.25, xc=0.5, yc=0.5, color="blue", fill="red", alpha=0.2)
tía Google era más sensible a mí. [Este] (http://groups.google.com/group/ggplot2/browse_thread/thread/7f4238b5658e85bb) podría ser de alguna ayuda. – joran