Skip to contents

geom_sketch_segment() draws roughened straight segments from (x, y) to (xend, yend). geom_sketch_step() connects points with a hand-drawn stairstep. Sketch analogues of ggplot2::geom_segment() / ggplot2::geom_step().

Usage

GeomSketchSegment

geom_sketch_segment(
  mapping = NULL,
  data = NULL,
  stat = "identity",
  position = "identity",
  ...,
  roughness = NULL,
  bowing = 1,
  n_passes = 2L,
  seed = NULL,
  medium = NULL,
  na.rm = FALSE,
  show.legend = NA,
  inherit.aes = TRUE
)

GeomSketchStep

geom_sketch_step(
  mapping = NULL,
  data = NULL,
  stat = "identity",
  position = "identity",
  ...,
  direction = "hv",
  roughness = 1,
  bowing = 1,
  n_passes = 2L,
  seed = NULL,
  medium = NULL,
  na.rm = FALSE,
  show.legend = NA,
  inherit.aes = TRUE
)

Arguments

mapping

Set of aesthetic mappings created by ggplot2::aes().

data

Data to display.

stat

Statistical transformation. Default "identity".

position

Position adjustment. Default "identity".

...

Other arguments passed on to the layer.

roughness

Non-negative roughness (0 = straight). Default 1. For geom_sketch_segment() this is a mappable aesthetic (map it per segment with aes(roughness = ), rescaled by scale_roughness_continuous()); for geom_sketch_step() it is a layer parameter (one path per group).

bowing

Non-negative bowing multiplier. Default 1.

n_passes

Number of stroke passes. Default 2.

seed

Integer seed. NULL uses getOption("ggsketch.seed", 1L).

medium

Drawing medium for the stroke: one of sketch_media(). The default "pen" is the classic constant-width double stroke; the others ("ink", "brush", "pencil", "chalk", "marker", "highlighter", "crayon") render through the variable-width stroke_ribbon() engine.

na.rm

Remove missing values silently? Default FALSE.

show.legend

Logical; include in legend?

inherit.aes

Override default aesthetics?

direction

For geom_sketch_step(): "hv" (horizontal then vertical, default) or "vh".

Value

A ggplot2 layer object.

Examples

library(ggplot2)
df <- data.frame(x = 1:3, y = 1:3, xend = 2:4, yend = c(3, 1, 4))
ggplot(df) +
  geom_sketch_segment(aes(x = x, y = y, xend = xend, yend = yend),
                      seed = 1L) +
  theme_sketch()