p = c("sf", "sp")
if(any(!unlist(lapply(p, requireNamespace, quietly=TRUE)))) {
m = which(!unlist(lapply(p, requireNamespace, quietly=TRUE)))
message("Can't run examples, please install ", paste(p[m], collapse = " "))
} else {
invisible(lapply(p, require, character.only=TRUE))
data(meuse, package = "sp")
meuse <- st_as_sf(meuse, coords = c("x", "y"), crs = 28992,
agr = "constant")
wt.copper <- wt.centroid(meuse, p='copper')
wt.zinc <- wt.centroid(meuse, p='zinc')
plot(st_geometry(meuse), pch=20, cex=0.75,
main='Weighted centroid(s)')
plot(st_geometry(wt.copper), pch=19, col='red',
cex=1.5, add=TRUE)
plot(st_geometry(wt.zinc), pch=19, col='blue',
cex=1.5, add=TRUE)
legend('topleft', legend=c('all','copper', 'zinc'),
pch=c(20,19,19),col=c('black','red','blue'))
}
Run the code above in your browser using DataLab