Learn R Programming

ggsketch (version 2.0.0)

GeomSketchChicklet: Sketchy chicklet chart

Description

Draws a stacked bar whose segments are separately rounded "chicklets" with a small gap between them -- the hand-drawn take on ggchicklet::geom_chicklet() (cf. ggchicklet). It is geom_sketch_col() with rounded corners on, a segment_gap inset between stacked segments, and a solid fill by default. As with ggchicklet, add ggplot2::coord_flip() for the classic horizontal layout.

Usage

GeomSketchChicklet

geom_sketch_chicklet( mapping = NULL, data = NULL, stat = "identity", position = "stack", ..., roughness = NULL, bowing = 1, n_passes = 2L, seed = NULL, fill_style = "solid", hachure_angle = 45, hachure_gap = NULL, fill_weight = 0.5, width = NULL, corner_radius = 0.5, segment_gap = 0.02, na.rm = FALSE, show.legend = NA, inherit.aes = TRUE )

Value

A ggplot2 layer object.

Arguments

mapping

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

data

Data to display.

stat

Statistical transformation. Default "identity" for geom_sketch_col(); "count" for geom_sketch_bar().

position

Position adjustment. Default "stack".

...

Other arguments passed on to the layer.

roughness

Non-negative roughness (0 = straight lines). A mappable aesthetic (default 1): pass a constant, or map it per bar with aes(roughness = ) (rescaled by scale_roughness_continuous()).

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

Fill style; see geom_sketch_col(). Default "solid" for the flat chicklet look; pass "hachure" etc. for a sketchier fill.

hachure_angle

Fill line angle in degrees. Default 45.

hachure_gap

Fill line gap in device inches (NULL = 15% of the bar's smaller drawn side, clamped to [0.04, 0.4] inches).

fill_weight

Stroke weight for fill lines. Default 0.5.

width

Bar width override. NULL uses 90% of resolution.

corner_radius

Corner rounding as a fraction [0, 1] of each half-side. Default 0.5; 0 gives square segments.

segment_gap

Gap between stacked segments, as a fraction of the panel's total drawn height. Default 0.02; 0 stacks the pills flush.

na.rm

Remove missing values silently? Default FALSE.

show.legend

Logical; include in legend?

inherit.aes

Override default aesthetics?

See Also

Other sketch-geoms: GeomSketchAbline, GeomSketchArrow, GeomSketchBoxplot, GeomSketchBracket, GeomSketchCallout, GeomSketchCol, GeomSketchContourFilled, GeomSketchCurve, GeomSketchDotplot, GeomSketchDumbbell, GeomSketchEdge, GeomSketchEllipse, GeomSketchEngrave, GeomSketchGantt, GeomSketchHex, GeomSketchLine, GeomSketchLinerange, GeomSketchLollipop, GeomSketchMarkCircle, GeomSketchMarkHull, GeomSketchPath, GeomSketchPoint, GeomSketchPolygon, GeomSketchRect, GeomSketchRibbon, GeomSketchRug, GeomSketchSegment, GeomSketchSfPolygon, 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()

Examples

Run this code
library(ggplot2)
df <- expand.grid(week = factor(1:4), team = c("A", "B", "C"))
df$pct <- c(4, 3, 2, 5, 3, 4, 5, 2, 3, 3, 3, 4)
ggplot(df, aes(week, pct, fill = team)) +
  geom_sketch_chicklet(seed = 1L) +
  coord_flip() +
  theme_sketch()

Run the code above in your browser using DataLab