addControl {leaflet} | R Documentation

## Graphics elements and layers

### Description

Add graphics elements and layers to the map widget.

Options to highlight shapes (polylines/polygons/circles/rectangles)

### Usage

    addControl(map, html, position = c("topleft", "topright", "bottomleft",
      "bottomright"), layerId = NULL, className = "info legend",
      data = getMapData(map))

    addTiles(map, urlTemplate = "//{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",
      attribution = NULL, layerId = NULL, group = NULL,
      options = tileOptions(), data = getMapData(map))

    addWMSTiles(map, baseUrl, layerId = NULL, group = NULL,
      options = WMSTileOptions(), attribution = NULL, layers = "",
      data = getMapData(map))

    addPopups(map, lng = NULL, lat = NULL, popup, layerId = NULL,
      group = NULL, options = popupOptions(), data = getMapData(map))

    addMarkers(map, lng = NULL, lat = NULL, layerId = NULL, group = NULL,
      icon = NULL, popup = NULL, popupOptions = NULL, label = NULL,
      labelOptions = NULL, options = markerOptions(), clusterOptions = NULL,
      clusterId = NULL, data = getMapData(map))

    addLabelOnlyMarkers(map, lng = NULL, lat = NULL, layerId = NULL,
      group = NULL, icon = NULL, label = NULL, labelOptions = NULL,
      options = markerOptions(), clusterOptions = NULL, clusterId = NULL,
      data = getMapData(map))

    addCircleMarkers(map, lng = NULL, lat = NULL, radius = 10,
      layerId = NULL, group = NULL, stroke = TRUE, color = "#03F",
      weight = 5, opacity = 0.5, fill = TRUE, fillColor = color,
      fillOpacity = 0.2, dashArray = NULL, popup = NULL,
      popupOptions = NULL, label = NULL, labelOptions = NULL,
      options = pathOptions(), clusterOptions = NULL, clusterId = NULL,
      data = getMapData(map))

    highlightOptions(stroke = NULL, color = NULL, weight = NULL,
      opacity = NULL, fill = NULL, fillColor = NULL, fillOpacity = NULL,
      dashArray = NULL, bringToFront = NULL, sendToBack = NULL)

    addCircles(map, lng = NULL, lat = NULL, radius = 10, layerId = NULL,
      group = NULL, stroke = TRUE, color = "#03F", weight = 5,
      opacity = 0.5, fill = TRUE, fillColor = color, fillOpacity = 0.2,
      dashArray = NULL, popup = NULL, popupOptions = NULL, label = NULL,
      labelOptions = NULL, options = pathOptions(), highlightOptions = NULL,
      data = getMapData(map))

    addPolylines(map, lng = NULL, lat = NULL, layerId = NULL, group = NULL,
      stroke = TRUE, color = "#03F", weight = 5, opacity = 0.5,
      fill = FALSE, fillColor = color, fillOpacity = 0.2, dashArray = NULL,
      smoothFactor = 1, noClip = FALSE, popup = NULL, popupOptions = NULL,
      label = NULL, labelOptions = NULL, options = pathOptions(),
      highlightOptions = NULL, data = getMapData(map))

    addRectangles(map, lng1, lat1, lng2, lat2, layerId = NULL, group = NULL,
      stroke = TRUE, color = "#03F", weight = 5, opacity = 0.5,
      fill = TRUE, fillColor = color, fillOpacity = 0.2, dashArray = NULL,
      smoothFactor = 1, noClip = FALSE, popup = NULL, popupOptions = NULL,
      label = NULL, labelOptions = NULL, options = pathOptions(),
      highlightOptions = NULL, data = getMapData(map))

    addPolygons(map, lng = NULL, lat = NULL, layerId = NULL, group = NULL,
      stroke = TRUE, color = "#03F", weight = 5, opacity = 0.5,
      fill = TRUE, fillColor = color, fillOpacity = 0.2, dashArray = NULL,
      smoothFactor = 1, noClip = FALSE, popup = NULL, popupOptions = NULL,
      label = NULL, labelOptions = NULL, options = pathOptions(),
      highlightOptions = NULL, data = getMapData(map))

    addGeoJSON(map, geojson, layerId = NULL, group = NULL, stroke = TRUE,
      color = "#03F", weight = 5, opacity = 0.5, fill = TRUE,
      fillColor = color, fillOpacity = 0.2, dashArray = NULL,
      smoothFactor = 1, noClip = FALSE, options = pathOptions(),
      data = getMapData(map))

    addTopoJSON(map, topojson, layerId = NULL, group = NULL, stroke = TRUE,
      color = "#03F", weight = 5, opacity = 0.5, fill = TRUE,
      fillColor = color, fillOpacity = 0.2, dashArray = NULL,
      smoothFactor = 1, noClip = FALSE, options = pathOptions())

### Arguments

`map` | a map widget object created from `leaflet()`
`html` | the content of the control. May be provided as string or as HTML generated with Shiny/htmltools tags
`position` | position of control: "topleft", "topright", "bottomleft", or "bottomright"
`layerId` | the layer id
`className` | extra CSS classes to append to the control, space separated
`data` | the data object from which the argument values are derived; by default, it is the `data` object provided to `leaflet()` initially, but can be overridden
`urlTemplate` | a character string as the URL template
`attribution` | the attribution text of the tile layer (HTML)
`group` | the name of the group the newly created layers should belong to (for `clearGroup` and `addLayersControl` purposes). Human-friendly group names are permitted–they need not be short, identifier-style names. Any number of layers and even different types of layers (e.g. markers and polygons) can share the same group name.
`options` | a list of extra options for tile layers, popups, paths (circles, rectangles, polygons, ...), or other map elements
`baseUrl` | a base URL of the WMS service
`layers` | comma-separated list of WMS layers to show
`lng` | a numeric vector of longitudes, or a one-sided formula of the form `~x` where `x` is a variable in `data`; by default (if not explicitly provided), it will be automatically inferred from `data` by looking for a column named `lng`, `long`, or `longitude` (case-insensitively)
`lat` | a vector of latitudes or a formula (similar to the `lng` argument; the names `lat` and `latitude` are used when guessing the latitude column from `data`)
`popup` | a character vector of the HTML content for the popups (you are recommended to escape the text using `htmlEscape()`
`icon` | the icon(s) for markers; an icon is represented by an R list of the form `list(iconUrl = "?", iconSize = c(x, y))`, and you can use `icons()` to create multiple icons; note when you use an R list that contains images as local files, these local image files will be base64 encoded into the HTML page so the icon images will still be available even when you publish the map elsewhere
`popupOptions` | A Vector of `popupOptions` to provide popups for security reasons)
`label` | a character vector of the HTML content for the labels
`labelOptions` | A Vector of `labelOptions` to provide label options for each label. Default `NULL`
`clusterOptions` | if not `NULL`, markers will be clustered using Leaflet.markercluster; you can use `markerClusterOptions()` to specify marker cluster options
`clusterId` | the id for the marker cluster layer
`radius` | a numeric vector of radii for the circles; it can also be a one-sided formula, in which case the radius values are derived from the `data` (units in meters for circles, and pixels for circle markers)
`stroke` | whether to draw stroke along the path (e.g. the borders of polygons or circles)
`color` | stroke color
`weight` | stroke width in pixels
`opacity` | stroke opacity (or layer opacity for tile layers)
`fill` | whether to fill the path with color (e.g. filling on polygons or circles)
`fillColor` | fill color
`fillOpacity` | fill opacity
`dashArray` | a string that defines the stroke dash pattern
`bringToFront` | Whether the shape should be brought to front on hover.
`sendToBack` | whether the shape should be sent to back on mouse out.
`highlightOptions` | Options for highlighting the shape on mouse over.
`smoothFactor` | how much to simplify the polyline on each zoom level (more means better performance and less accurate representation)
`noClip` | whether to disable polyline clipping
`lng1, lat1, lng2, lat2` | latitudes and longitudes of the south-west and north-east corners of rectangles
`geojson` | a GeoJSON list, or character vector of length 1
`topojson` | a TopoJSON list, or character vector of length 1

### Value

the new `map` object

### Functions

- `addControl`: Add arbitrary HTML controls to the map

- `addTiles`: Add a tile layer to the map

- `addWMSTiles`: Add a WMS tile layer to the map

- `addPopups`: Add popups to the map

- `addMarkers`: Add markers to the map

- `addLabelOnlyMarkers`: Add Label only markers to the map

- `addCircleMarkers`: Add circle markers to the map

- `highlightOptions`: Options to highligh a shape on hover

- `addCircles`: Add circles to the map

- `addPolylines`: Add polylines to the map

- `addRectangles`: Add rectangles to the map

- `addPolygons`: Add polygons to the map

- `addGeoJSON`: Add GeoJSON layers to the map

- `addTopoJSON`: Add TopoJSON layers to the map

### References

The Leaflet API documentation: http://leafletjs.com/reference-1.3.1.html

### See Also

`tileOptions`, `WMSTileOptions`, `popupOptions`, `markerOptions`, `pathOptions`

[Package leaflet version 2.0.1 Index]