Draws a roughened, hand-drawn path connecting observations in order.
Equivalent to geom_path() with a sketch aesthetic.
GeomSketchPathgeom_sketch_path(
mapping = NULL,
data = NULL,
stat = "identity",
position = "identity",
...,
roughness = 1,
bowing = 1,
n_passes = 2L,
seed = NULL,
medium = NULL,
na.rm = FALSE,
show.legend = NA,
inherit.aes = TRUE
)
A ggplot2 layer object.
Set of aesthetic mappings created by ggplot2::aes().
Data to display.
Statistical transformation (default "identity").
Position adjustment (default "identity").
Other arguments passed on to the layer.
Non-negative roughness parameter (0 = straight). Default 1.
Non-negative bowing multiplier. Default 1.
Number of stroke passes for the double-stroke effect. Default 2.
Integer seed for reproducibility. NULL uses
getOption("ggsketch.seed", 1L).
Drawing medium for the stroke: one of sketch_media()
("pen", "ink", "fountain_pen", "ballpoint", "brush", "pencil",
"charcoal", "pastel", "chalk", "marker", "highlighter",
"crayon", "spray"). NULL
(default) uses "pen", the classic constant-width double stroke; most others
render through the variable-width stroke_ribbon() engine (tapered ink,
brushy swells, grainy pencil/charcoal, dusty chalk, a translucent
highlighter band, ...), and "spray" renders as a soft
airbrush dot cloud (sketch_spray_grob()). medium is also a mappable
aesthetic: map it with aes(medium = ) (one medium per group) and control
the mapping with scale_medium_discrete().
If FALSE (default), missing values are removed with a warning.
Logical. Should this layer be included in the legend?
If FALSE, override the default aesthetics.
Map aes(pressure = ) to a variable to make the stroke swell and thin
along the line, like a pen pressed harder in places. The line is then
drawn through the variable-width stroke_ribbon() engine even under the
default medium = "pen", and combines with any non-pen medium (their width
profiles multiply). The mapped values are rescaled by
scale_pressure_continuous(); wrap in base::I() for raw multipliers.
Other sketch-geoms:
GeomSketchAbline,
GeomSketchArrow,
GeomSketchBoxplot,
GeomSketchBracket,
GeomSketchCallout,
GeomSketchChicklet,
GeomSketchCol,
GeomSketchContourFilled,
GeomSketchCurve,
GeomSketchDotplot,
GeomSketchDumbbell,
GeomSketchEdge,
GeomSketchEllipse,
GeomSketchEngrave,
GeomSketchGantt,
GeomSketchHex,
GeomSketchLine,
GeomSketchLinerange,
GeomSketchLollipop,
GeomSketchMarkCircle,
GeomSketchMarkHull,
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()
library(ggplot2)
ggplot(economics, aes(date, unemploy)) +
geom_sketch_path(roughness = 1.5, seed = 42L)
# Stroke width tracks a variable along the line.
ggplot(economics[1:150, ], aes(date, unemploy, pressure = unemploy)) +
geom_sketch_path(linewidth = 1, seed = 42L)
Run the code above in your browser using DataLab