polylabelr is an R wrapper for the polylabel
package from
Mapbox. It currently contains a single
function, poi()
that finds the pole of inaccessibility of a polygon,
which usually makes for a good place to put a label on a polygon—hence
the name.
# a concave polygon
x <- c(0, 4, 1, 6, 7, 7, 0, 0)
y <- c(0, 0, 1, 2, 1, 3, 2, 0)
# locate the pole of inaccessibility
p <- polylabelr::poi(x, y, precision = 0.01)
plot.new()
plot.window(range(x, na.rm = TRUE), range(y, na.rm = TRUE), asp = 1)
polypath(x, y, col = "grey", border = FALSE)
points(p)
install.packages("polylabelr")
remotes::install_github("jolars/polylabelr")
The source code from geometry.hpp has been modified slightly by removing the use of some GCC diagnostic pragmas that caused warnings in R CMD check.
polylabelr uses semantic versioning.