Skip to contents

An icon can be represented as a list of the form list(icon, markerColor, ...). This function is vectorized over its arguments to create a list of icon data. Shorter argument values will be re-cycled. NULL values for these arguments will be ignored.

Usage

weatherIconList(...)

# S3 method for leaflet_weather_icon_set
[(x, i)

makeWeatherIcon(
  icon,
  markerColor = "red",
  iconColor = "white",
  extraClasses = NULL
)

weatherIcons(
  icon,
  markerColor = "red",
  iconColor = "white",
  extraClasses = NULL
)

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

Arguments

...

icons created from makeWeatherIcon()

x

icons

i

offset

icon

the weather icon name w/o the "wi-" prefix. For a full list see https://erikflowers.github.io/weather-icons/

markerColor

color of the marker

iconColor

color of the weather icon

extraClasses

Character vector of extra classes.

map

a map widget object created from leaflet()

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)

layerId

the layer id

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.

popup

a character vector of the HTML content for the popups (you are recommended to escape the text using htmltools::htmlEscape() for security reasons)

popupOptions

A Vector of popupOptions() to provide popups

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

options

a list of extra options for tile layers, popups, paths (circles, rectangles, polygons, ...), or other map elements

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

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

Examples


iconSet <- weatherIconList(
  hurricane = makeWeatherIcon(icon = "hurricane"),
  tornado = makeWeatherIcon(icon = "tornado")
)

iconSet[c("hurricane", "tornado")]
#> $hurricane
#> $icon
#> [1] "hurricane"
#> 
#> $markerColor
#> [1] "red"
#> 
#> $iconColor
#> [1] "white"
#> 
#> attr(,"class")
#> [1] "leaflet_weather_icon"
#> 
#> $tornado
#> $icon
#> [1] "tornado"
#> 
#> $markerColor
#> [1] "red"
#> 
#> $iconColor
#> [1] "white"
#> 
#> attr(,"class")
#> [1] "leaflet_weather_icon"
#> 
#> attr(,"class")
#> [1] "leaflet_weather_icon_set"
leaflet() %>%
  addTiles() %>%
  addWeatherMarkers(
    lng = -118.456554, lat = 34.078039,
    label = "This is a label",
    icon = makeWeatherIcon(
      icon = "hot",
      iconColor = "#ffffff77",
      markerColor = "blue"
    )
  )
## for more examples see # browseURL(system.file("examples/weatherIcons.R", package = "leaflet.extras"))