Draw polygons around label positions.
draw.polygons <- function(d,...){ stopifnot(c("left.y", "left.x", "right.y", "right.x") %in% names(d)) if(! "box.color" %in% names(d)){ d$box.color <- "black" } for(i in 1:nrow(d)){ with(d[i,], { L <- list(x=c(left.x, left, right, right.x, right, left), y=c(left.y, top, top, right.y, bottom, bottom)) for(xy.name in names(L)){ xy <- L[[xy.name]] L[[xy.name]] <- xy[!is.na(xy)] } grid.polygon(L$x, L$y, default.units="cm", gp=gpar(col=box.color, fill=colour)) }) } d$colour <- "white" d }
Please contact Toby Dylan Hocking if you are using directlabels or have ideas to contribute, thanks! |
Documentation website generated from source code version 2021.2.24 (git revision bb6db07 Mon, 14 Jun 2021 22:38:45 +0530) using inlinedocs. |
validate |