ol_scale_color_discrete: Line Color Scale (Discrete)

View source: R/scales.R

ol_scale_color_discreteR Documentation

Line Color Scale (Discrete)

Description

Specify a discrete line color mapping scale.

Usage

ol_scale_color_discrete(color.vector = NULL, name = NULL,
  na.col.val = "#FFFFFF00", ordered.values = NULL, opacity = 1,
  preserve.opacity = FALSE, draw.lty = "solid", draw.lwd = 3,
  display = FALSE)

Arguments

color.vector

character named vector of the form c(value=color). If NULL, a default color mapping is assigned.

name

character the scale name.

na.col.val

character the color assigned to unrecognized or NA values.

ordered.values

character, numeric, or factor vector containing the ordered unique discrete variable values. This input is used to determine the order of the values appearing in the legend. If not supplied, the order is taken from names(color.vector).

opacity

numeric in [0,1]. The color opacity, if not specified in the color.vector colors.

preserve.opacity

logical indicating whether to draw the legend with the same opacity as the feature fills on the map.

draw.lty

character indicating the line type for the legend only. This will be passed to an R plot command. See par.

draw.lwd

numeric width of lines only used in drawing the legend.

display

logical indicating whether to draw the scale for output in the HTML. If TRUE, a bitmap will be created and sourced in the HTML in an img tag. If FALSE, the draw.* inputs are ignored.

Details

This method maps OpenLayers feature line colors to discrete variable values. This scale can be added to an Ol.Map S3 object only if the Ol.Map object has a layer with a "color" mapping to a numeric, character, or factor type variable. If no such layer exists, attempts to add this type of scale will result in a warning. The color.vector input enables the user to specify the exact mapping, assigning colors to specific variable values.

Value

list of class Scale.Color.Discrete.

See Also

ol_map, ol_geom_polygon, ol_geom_line

Examples

line.matrix1 <- matrix(
    c(
        -80.4,-80.4,
        25.78,25.88
    ),
    ncol=2
)
line.matrix2 <- matrix(
    c(
        -80.25,-80.35,
        25.65,25.65
    ),
    ncol=2
)
line.list <- list(line.matrix1,line.matrix2)
line.df <- data.frame(
    direction=c("vertical","horizontal"),
    no=runif(2)
)
miami.gray.basemap <- ol_map(
    center=c(-80.385790,25.782618),
    zoom=9
    ) + 
   lightgray() 
line.layer <- ol_geom_line(
    line.list,
    mapping=ol_aes(
        color=direction # discrete mapping
    ),
    df=line.df,
    name="Miami Lines",
    toggle.control=TRUE,
    lwd=5
)
line.color.scale <- ol_scale_color_discrete(
    color.vector=c(
        vertical = 'red',
        horizontal = 'blue'
    ),
    name="Direction",
    display=TRUE
)
line.map.miami <- miami.gray.basemap + 
    line.layer + 
    line.color.scale
## Not run: 
# Output to file and view
ol_map2HTML(
  line.map.miami,
  'miami_lines.html',
  map.heading="Miami Lines"
)
browseURL("miami_lines.html")

## End(Not run)

cemarks/ROpenLayers documentation built on March 31, 2022, 12:05 p.m.