Skip to contents

plot a sf map using rough.js

Usage

roughsf(
  layers,
  roughness = 1,
  bowing = 1,
  simplification = 1,
  font = "30px Arial",
  title = NULL,
  title_font = "30px Arial",
  caption = NULL,
  caption_font = "30px Arial",
  width = NULL,
  height = NULL,
  elementId = NULL,
  chunk_name = "canvas"
)

Arguments

layers

an sf object or a list of sf object. each object should only contain one type of geometry.

roughness

numeric vector for roughness of lines

bowing

numeric vector for bowing of lines

simplification

simplify drawings (remove points from objects)

font

font size and font family for labels

title

optional title of the map

title_font

font size and font family for title

caption

optional caption of the map

caption_font

font size and font family for caption

width

width

height

height

elementId

DOM id

chunk_name

markdown specific

Value

htmlwidget containing the drawn network

Details

The following attributes are supported for POLYGONS:

  • fill fill color

  • color stroke color

  • stroke stroke size

  • fillstyle one of "hachure", "solid", "zigzag", "cross-hatch", "dots", "dashed", "zigzag-line"

  • fillweight thickness of fillstyle (between 0 and 1)

  • hachureangle angle of hachure lines

  • hachuregap gap between two hachure lines

The following attributes are supported for LINESTRINGS:

  • color stroke color

  • stroke stroke size

The following attributes are supported for POINTS:

  • color color of point

  • size size of point

  • label label to be added (optional)

  • label_pos position of label relative to point: (c)enter, (n)orth, (e)ast, (s)outh, (w)est (optional)

Default values are used if one of the attributes is not found.

The result of a roughsf call can be printed to file with save_roughsf()

References

More details on roughjs can be found on https://github.com/rough-stuff/rough/wiki

Examples

library(sf)
#> Linking to GEOS 3.10.2, GDAL 3.4.1, PROJ 8.2.1; sf_use_s2() is TRUE
demo(nc, ask = FALSE, echo = FALSE)
nc_poly <- st_cast(nc,"POLYGON",warn = FALSE)
roughsf(nc_poly)