Skip to contents

Draws a kernel density estimate as a hand-drawn filled area — the sketch analogue of ggplot2::geom_density(). Drawing is delegated to GeomSketchArea; the kernel density is computed by ggplot2::stat_density().

Usage

geom_sketch_density(
  mapping = NULL,
  data = NULL,
  stat = "density",
  position = "identity",
  ...,
  roughness = 1,
  bowing = 1,
  n_passes = 2L,
  seed = NULL,
  fill_style = "hachure",
  hachure_angle = 45,
  hachure_gap = NULL,
  fill_weight = 0.5,
  outline.type = "full",
  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.

bowing

Non-negative bowing multiplier. Default 1.

n_passes

Number of stroke passes. Default 2.

seed

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

fill_style

One of "hachure", "cross_hatch", "zigzag", "zigzag_line", "scribble", "dots", "dashed", or "solid". Default "hachure".

hachure_angle

Fill line angle in degrees. Default 45.

hachure_gap

Fill line gap in npc units (NULL = 6% of diagonal).

fill_weight

Stroke weight for fill lines. Default 0.5.

outline.type

Kept for signature parity with ggplot2::geom_density(); ignored (the rough outline always traces the full band).

na.rm

Remove missing values silently? Default FALSE.

show.legend

Logical; include in legend?

inherit.aes

Override default aesthetics?

Examples

library(ggplot2)
ggplot(faithful, aes(eruptions)) +
  geom_sketch_density(fill = "khaki", seed = 1L) +
  theme_sketch()