A hand-drawn take on ggplot2::geom_sf(). Roughens the boundaries of sf
geometry: (MULTI)POLYGON features are filled with a hole-aware hachure (or
any fill_style), (MULTI)LINESTRING features become sketch paths, and
(MULTI)POINT features become sketch points. One call draws whichever
geometry types are present.
GeomSketchSfPolygongeom_sketch_sf(
mapping = ggplot2::aes(),
data = NULL,
...,
fill_style = "hachure",
roughness = 1,
bowing = 1,
n_passes = 2L,
seed = NULL,
na.rm = FALSE,
show.legend = NA,
inherit.aes = FALSE
)
A list of ggplot2 layers (one per geometry kind present).
Aesthetic mappings created by ggplot2::aes(), referring to
columns of data (e.g. aes(fill = pop)). The geometry column is handled
automatically - do not map it.
An sf or sfc object (required).
Other arguments passed on to the underlying layers.
Fill style for polygons; see geom_sketch_polygon().
Default "hachure".
Sketch parameters; see
geom_sketch_path().
Remove missing values silently? Default FALSE.
Standard layer arguments. inherit.aes
defaults to FALSE (as for geom_sf()).
Requires the sf package. Unlike geom_sf(), this does not integrate
with coord_sf(); it plots in planar coordinates, so pre-project
longitude/latitude data with sf::st_transform() for an undistorted map. The
data argument must be given explicitly (an sf or sfc object); aesthetics
in mapping refer to columns of that object.
Other sketch-geoms:
GeomSketchAbline,
GeomSketchArrow,
GeomSketchBoxplot,
GeomSketchBracket,
GeomSketchCallout,
GeomSketchChicklet,
GeomSketchCol,
GeomSketchContourFilled,
GeomSketchCurve,
GeomSketchDotplot,
GeomSketchDumbbell,
GeomSketchEdge,
GeomSketchEllipse,
GeomSketchEngrave,
GeomSketchGantt,
GeomSketchHex,
GeomSketchLine,
GeomSketchLinerange,
GeomSketchLollipop,
GeomSketchMarkCircle,
GeomSketchMarkHull,
GeomSketchPath,
GeomSketchPoint,
GeomSketchPolygon,
GeomSketchRect,
GeomSketchRibbon,
GeomSketchRug,
GeomSketchSegment,
GeomSketchSlope,
GeomSketchSmooth,
GeomSketchSpoke,
GeomSketchTextRepel,
GeomSketchViolin,
StatSketchBeeswarm,
StatSketchCalendar,
StatSketchDensityRidges,
StatSketchFunnel,
StatSketchPie,
StatSketchPyramid,
StatSketchRadar,
StatSketchStream,
StatSketchTreemap,
StatSketchWaffle,
StatSketchWaterfall,
annotate_sketch(),
annotate_sketch_arrow(),
annotate_sketch_callout(),
annotate_sketch_highlight(),
geom_sketch_alluvial(),
geom_sketch_arc_diagram(),
geom_sketch_bin2d(),
geom_sketch_bump(),
geom_sketch_chord(),
geom_sketch_contour(),
geom_sketch_count(),
geom_sketch_dendrogram(),
geom_sketch_density(),
geom_sketch_density2d(),
geom_sketch_ecdf(),
geom_sketch_function(),
geom_sketch_histogram(),
geom_sketch_jitter(),
geom_sketch_marimekko(),
geom_sketch_mosaic(),
geom_sketch_parallel(),
geom_sketch_qq(),
geom_sketch_quantile(),
geom_sketch_rose(),
geom_sketch_sunburst(),
geom_sketch_text(),
sketch_graph()
library(ggplot2)
nc <- sf::st_read(system.file("shape/nc.shp", package = "sf"), quiet = TRUE)
ggplot() +
geom_sketch_sf(data = nc, aes(fill = AREA), seed = 1L) +
scale_fill_viridis_c() +
theme_void()
Run the code above in your browser using DataLab