Calculate boxes around labels, for collision detection.
calc.boxes <- function
### Calculate boxes around labels, for collision detection.
(d,
debug=FALSE,
...
){
vp <- current.viewport()
convert <- function(worh){
conv <- get(paste("convert",worh,sep=""))
stri <- get(paste("string",worh,sep=""))
with(d,sapply(seq_along(groups),function(i){
if("cex"%in%names(d))vp$gp <- gpar(cex=cex[i])
pushViewport(vp)
if(debug)grid.rect() ##highlight current viewport
w <- conv(stri(as.character(groups[i])),"cm")
popViewport()
w
}))
}
## abs since we have a weird bug with ggplot2 sometimes
d$w <- abs(convert("Width"))
d$h <- abs(convert("Height"))
calc.borders(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 |