addDrawToolbar {leaflet.extras} | R Documentation |
Adds a Toolbar to draw shapes/points on the map.
Description
Adds a Toolbar to draw shapes/points on the map.
Removes the draw toolbar
Usage
addDrawToolbar(
map,
targetLayerId = NULL,
targetGroup = NULL,
position = c("topleft", "topright", "bottomleft", "bottomright"),
polylineOptions = drawPolylineOptions(),
polygonOptions = drawPolygonOptions(),
circleOptions = drawCircleOptions(),
rectangleOptions = drawRectangleOptions(),
markerOptions = drawMarkerOptions(),
circleMarkerOptions = drawCircleMarkerOptions(),
editOptions = FALSE,
singleFeature = FALSE,
toolbar = NULL,
handlers = NULL,
drag = TRUE
)
removeDrawToolbar(map, clearFeatures = FALSE)
Arguments
map |
The map widget. |
targetLayerId |
An optional layerId of a GeoJSON/TopoJSON layer whose features need to be editable. Used for adding a GeoJSON/TopoJSON layer and then editing the features using the draw plugin. |
targetGroup |
An optional group name of a Feature Group whose features need to be editable. Used for adding shapes(markers, lines, polygons) and then editing them using the draw plugin. You can either set layerId or group or none but not both. |
position |
The position where the toolbar should appear. |
polylineOptions |
See |
polygonOptions |
See |
circleOptions |
See |
rectangleOptions |
See |
markerOptions |
See |
circleMarkerOptions |
See |
editOptions |
By default editing is disable. To enable editing pass |
singleFeature |
When set to TRUE, only one feature can be drawn at a time, the previous ones being removed. |
toolbar |
See |
handlers |
See |
drag |
When set to |
clearFeatures |
whether to clear the map of drawn features. |
Details
The drawn features emit events upon mouse interaction.
Event names follow the pattern: input$MAPID_LAYERCATEGORY_EVENTNAME
,
where LAYERCATEGORY
can be one of:
-
marker
-
shape
-
polyline
Similarly, for EVENTNAME
, valid values are:
-
click
-
mouseover
-
mouseout
See the provided example for usage:
browseURL(system.file("examples/shiny/draw-events/draw_mouse_events.R",
package = "leaflet.extras"))
Examples
leaflet() %>%
setView(0, 0, 2) %>%
addProviderTiles(providers$CartoDB.Positron) %>%
addDrawToolbar(
targetGroup = "draw",
editOptions = editToolbarOptions(
selectedPathOptions = selectedPathOptions()
)
) %>%
addLayersControl(
overlayGroups = c("draw"),
options = layersControlOptions(collapsed = FALSE)
) %>%
addStyleEditor()
## for more examples see
# browseURL(system.file("examples/draw.R",
# package = "leaflet.extras"))
# browseURL(system.file("examples/shiny/draw-events/app.R",
# package = "leaflet.extras"))
# browseURL(system.file("examples/shiny/draw-events/draw_mouse_events.R",
# package = "leaflet.extras"))