Learn R Programming

ggsketch (version 2.0.0)

StatSketchRadar: Sketchy radar (spider) chart

Description

Draws a hand-drawn radar chart: each series is a closed polygon over evenly spaced angular axes, with a roughened web (concentric rings, radial spokes, and axis labels) drawn behind. Map axis (the variable that becomes each spoke, usually a factor), value (its magnitude), and group (the series); map colour/fill to the series too. Values are scaled to a common unit radius (rmax), and each polygon takes any fill_style (including "watercolor"). No new dependencies (cf. ggradar, fmsb::radarchart()).

Usage

StatSketchRadar

GeomSketchRadar

geom_sketch_radar( mapping = NULL, data = NULL, stat = "sketch_radar", position = "identity", ..., rmax = NULL, fill_style = "hachure", hachure_angle = 45, hachure_gap = NULL, fill_weight = 0.5, n_rings = 4L, grid_colour = "grey75", label_size = 3.2, label_colour = "grey30", label_family = NULL, roughness = 1, bowing = 1, n_passes = 2L, seed = NULL, na.rm = FALSE, show.legend = NA, inherit.aes = TRUE )

Value

A ggplot2 layer object.

Arguments

mapping

Aesthetic mappings created by ggplot2::aes(). Requires axis and value; usually also map group (and colour/fill) to the series.

data

Data to display.

stat

Statistical transformation. Default "sketch_radar".

position

Position adjustment. Default "identity".

...

Other arguments passed on to the layer.

rmax

Value mapped to the outer ring (NULL = the data maximum).

fill_style

Polygon fill style; see geom_sketch_polygon(). Default "hachure".

hachure_angle, hachure_gap, fill_weight

Fill controls; see geom_sketch_polygon().

n_rings

Number of concentric grid rings. Default 4.

grid_colour

Colour of the web (rings + spokes). Default "grey75".

label_size, label_colour, label_family

Axis-label text controls.

roughness, bowing, n_passes, seed

Sketch parameters.

na.rm

Remove missing values silently? Default FALSE.

show.legend

Logical; include in legend?

inherit.aes

Override default aesthetics?

Details

Like geom_sketch_pie(), the chart lives in its own square coordinate space, so pair it with coord_equal() and theme_void() (or theme_sketch()).

See Also

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, GeomSketchSfPolygon, GeomSketchSlope, GeomSketchSmooth, GeomSketchSpoke, GeomSketchTextRepel, GeomSketchViolin, StatSketchBeeswarm, StatSketchCalendar, StatSketchDensityRidges, StatSketchFunnel, StatSketchPie, StatSketchPyramid, 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)
skills <- data.frame(
  axis = rep(c("Speed", "Power", "Range", "Control", "Stamina"), 2),
  value = c(8, 6, 9, 5, 7, 5, 9, 4, 8, 6),
  who = rep(c("A", "B"), each = 5)
)
ggplot(skills, aes(axis = axis, value = value, group = who,
                   colour = who, fill = who)) +
  geom_sketch_radar(alpha = 0.3, seed = 1L) +
  coord_equal() +
  theme_void()

Run the code above in your browser using DataLab