Leaflet Map Plugin for Drawing and Editing

A collection of tools for interactive manipulation of (spatial) data layers on leaflet web maps. Tools include editing of existing layers, creation of new layers through drawing of shapes (points, lines, polygons), deletion of shapes as well as cutting holes into existing shapes. Provides control over options to e.g. prevent self-intersection of polygons and lines or to enable/disable snapping to align shapes.


CRANstatus Travis buildstatus

leafpm is a plugin for leaflet to provide map editing and drawing in R with Leaflet.pm. It is based closely off of leaflet.extras addDrawToolbar(). leafpm is intended to supplement leaflet.extras with better support for snapping and holes.

Installation

You can install the released version of leafpm from CRAN with:

install.packages("leafpm")

Example

library(mapview)
library(leafpm)
library(sf)
 
outer1 = matrix(c(0,0,10,0,10,10,0,10,0,0),ncol=2, byrow=TRUE)
hole1 = matrix(c(1,1,1,2,2,2,2,1,1,1),ncol=2, byrow=TRUE)
hole2 = matrix(c(5,5,5,6,6,6,6,5,5,5),ncol=2, byrow=TRUE)
outer2 = matrix(c(11,0,11,1,12,1,12,0,11,0),ncol=2, byrow=TRUE)
 
pts1 = list(outer1, hole1, hole2)
pts2 = list(outer2)
 
pl1 = st_sf(geom = st_sfc(st_polygon(pts1)))
pl2 = st_sf(geom = st_sfc(st_polygon(pts2)))
 
mpl = st_sf(geom = st_combine(rbind(pl1, pl2)))
 
addPmToolbar(
  mapview(mpl)@map,
  targetGroup = "mpl"
)

mapedit Integration

leafpm was designed to work as an editor in mapedit, so you can get your edits back into the R session. For instance,

#install.packages("mapedit")
library(mapedit)
 
drawFeatures(editor = "leafpm")

Code of Conduct

Please note that the ‘leafpm’ project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

Acknowledgment

This project has been realized with financial support from the

News

leafpm 0.1.0

  • Initial release

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("leafpm")

0.1.0 by Kenton Russell, 8 months ago


https://github.com/r-spatial/leafpm


Report a bug at https://github.com/r-spatial/leafpm/issues


Browse source code at https://github.com/cran/leafpm


Authors: Kenton Russell [aut, cre] , Tim Appelhans [aut] , Sumit Kumar [ctb] (Leaflet.pm plugin)


Documentation:   PDF Manual  


MIT + file LICENSE license


Imports dplyr, htmltools, htmlwidgets, jsonlite, leaflet, sf

Suggests testthat

Enhances geojsonio, mapedit, mapview, shiny


Imported by mapedit.


See at CRAN