annotation_custom {ggplot2} | R Documentation |
This is a special geom intended for use as static annnotations that are the same in every panel. These anotations will not affect scales (i.e. the x and y axes will not grow to cover the range of the grob, and the grob will not be modified by any ggplot settings or mappings).
annotation_custom(grob, xmin = -Inf, xmax = Inf, ymin = -Inf, ymax = Inf)
grob |
grob to display |
xmin,xmax |
x location (in data coordinates) giving horizontal location of raster |
ymin,ymax |
y location (in data coordinates) giving vertical location of raster |
Most useful for adding tables, inset plots, and other grid-based decorations.
annotation_custom
expects the grob to fill the
entire viewport defined by xmin, xmax, ymin, ymax. Grobs
with a different (absolute) size will be center-justified
in that region. Inf values can be used to fill the full
plot panel (see examples).
# Dummy plot base <- qplot(1:10, 1:10, geom = "blank") + theme_bw() # Adding a table require(gridExtra) base + annotation_custom(grob = tableGrob(head(iris[ ,1:3])), xmin = 3, xmax = 6, ymin = 2, ymax = 8) # full panel base + annotation_custom(grob = roundrectGrob(), xmin = -Inf, xmax = Inf, ymin = -Inf, ymax = Inf) # Inset plot g <- ggplotGrob(qplot(1, 1) + theme(plot.background = element_rect(colour = "black"))) base + annotation_custom(grob = g, xmin = 1, xmax = 10, ymin = 8, ymax = 10)