Learn R Programming

simplevis (version 4.5.0)

gg_sf_col: Simple feature ggplot map that is coloured.

Description

Map of simple features in ggplot that is coloured, but not facetted.

Usage

gg_sf_col(
  data,
  col_var,
  text_var = NULL,
  pal = NULL,
  pal_na = "#7F7F7FFF",
  pal_rev = FALSE,
  size_point = 1,
  size_line = 0.5,
  alpha = 0.9,
  borders = NULL,
  borders_behind = TRUE,
  pal_borders = "#7F7F7FFF",
  borders_size = 0.2,
  title = NULL,
  title_wrap = 100,
  subtitle = NULL,
  subtitle_wrap = 100,
  col_cuts = NULL,
  col_labels = NULL,
  col_na = TRUE,
  col_pretty_n = 4,
  col_method = NULL,
  col_right_closed = TRUE,
  col_title = NULL,
  col_title_wrap = 25,
  caption = NULL,
  caption_wrap = 80,
  font_family = "",
  font_size_title = NULL,
  font_size_body = NULL,
  mobile = FALSE
)

Arguments

data

A sf object with defined coordinate reference system. Required input.

col_var

Unquoted variable for points to be coloured by. Required input.

text_var

Unquoted variable to be used as a customised tooltip in combination with plotly::ggplotly(plot, tooltip = "text"). Defaults to NULL.

pal

Character vector of hex codes. Defaults to NULL, which selects the colorbrewer Set1 or viridis.

pal_na

The hex code or name of the NA colour to be used.

pal_rev

Reverses the palette. Defaults to FALSE.

size_point

Size of points. Defaults to 0.5.

size_line

Size of lines. Defaults to 0.5.

alpha

The opacity of polygons. Defaults to 0.9.

borders

A sf object as administrative boundaries (or coastlines). Defaults to no boundaries added. The rnaturalearth package is a useful source of country and state boundaries.

borders_behind

TRUE or FALSE as to whether the borders is to be behind the sf object defined in the data argument. Defaults to TRUE.

pal_borders

Colour of the borders. Defaults to "#7F7F7F".

borders_size

Size of the borders. Defaults to 0.2.

title

Title string. Defaults to NULL.

title_wrap

Number of characters to wrap the title to. Defaults to 100. Not applicable where mobile equals TRUE.

subtitle

Subtitle string.

subtitle_wrap

Number of characters to wrap the subtitle to. Defaults to 100. Not applicable where mobile equals TRUE.

col_cuts

A vector of cuts to colour a numeric variable. If "bin" is selected, the first number in the vector should be either -Inf or 0, and the final number Inf. If "quantile" is selected, the first number in the vector should be 0 and the final number should be 1. Defaults to quartiles.

col_labels

A function or named vector to modify colour scale labels. Defaults to stringr::str_to_sentence for categorical colour variables and an internal function for numeric colour variables. Use ggplot2::waiver() to keep colour labels untransformed.

col_na

TRUE or FALSE of whether to include col_var NA values. Defaults to TRUE.

col_pretty_n

For a numeric colour variable of "bin" col_method, the desired number of intervals on the colour scale, as calculated by the pretty algorithm. Defaults to 4.

col_method

The method of colouring features, either "bin", "quantile" or "category." If numeric, defaults to "bin".

col_right_closed

For a numeric colour variable, TRUE or FALSE of whether bins or quantiles are to be cut right-closed. Defaults to TRUE.

col_title

Colour title string for the legend. Defaults to NULL, which converts to sentence case with spaces. Use "" if you would like no title.

col_title_wrap

Number of characters to wrap the colour title to. Defaults to 25. Not applicable where mobile equals TRUE.

caption

Caption title string.

caption_wrap

Number of characters to wrap the caption to. Defaults to 80. Not applicable where mobile equals TRUE.

font_family

Font family to use. Defaults to "".

font_size_title

Font size for the title text. Defaults to 11.

font_size_body

Font size for all text other than the title. Defaults to 10.

mobile

Whether the plot is to be displayed on a mobile device. Defaults to FALSE. If within a shiny app with the mobileDetect function, then use mobile = input$isMobile.

Value

A ggplot object.

Examples

Run this code
# NOT RUN {
gg_sf_col(example_sf_point, 
          col_var = trend_category, 
          borders = nz)
   
gg_sf_col(example_sf_polygon, 
          col_var = density, 
          borders = nz, 
          col_method = "bin", 
          col_cuts = c(0, 10, 50, 100, 150, 200, Inf))

gg_sf_col(example_sf_polygon, 
          col_var = density, 
          borders = nz, 
          col_method = "quantile", 
          col_cuts = c(0, 0.25, 0.5, 0.75, 0.95, 1))
          
# }

Run the code above in your browser using DataLab