grid.pattern_wave()
draws a wave pattern onto the graphic device.
grid.pattern_wave( x = c(0, 0, 1, 1), y = c(1, 0, 0, 1), id = 1L, ..., colour = gp$col %||% "grey20", fill = gp$fill %||% "grey80", angle = 30, density = 0.2, spacing = 0.05, xoffset = 0, yoffset = 0, amplitude = 0.5 * spacing, frequency = 1/spacing, alpha = gp$alpha %||% NA_real_, linetype = gp$lty %||% 1, size = gp$lwd %||% 1, grid = "square", type = "triangle", default.units = "npc", name = NULL, gp = gpar(), draw = TRUE, vp = NULL )
x | A numeric vector or unit object specifying x-locations of the pattern boundary. |
---|---|
y | A numeric vector or unit object specifying y-locations of the pattern boundary. |
id | A numeric vector used to separate locations in x, y into multiple boundaries.
All locations within the same |
... | Currently ignored |
colour | Stroke colour |
fill | Fill colour |
angle | Rotation angle in degrees |
density | Approx. fraction of area the pattern fills. |
spacing | Spacing between repetitions of pattern ('snpc' units between 0 and 1). |
xoffset | Shift pattern along x axis ('snpc' units between 0 and 1). |
yoffset | Shift pattern along y axis ('snpc' units between 0 and 1). |
amplitude | Wave amplitude (“snpc” units) |
frequency | Linear frequency (inverse “snpc” units) |
alpha | Alpha (between 0 and 1) or |
linetype | Stroke linetype |
size | Stroke linewidth |
grid | Adjusts placement and density of certain graphical elements.
|
type | Either “sine” or “triangle” (default). |
default.units | A string indicating the default units to use if |
name | A character identifier. |
gp | An object of class |
draw | A logical value indicating whether graphics output should be produced. |
vp | A Grid viewport object (or NULL). |
A grid grob object invisibly. If draw
is TRUE
then also draws to the graphic device as a side effect.
Use grid.pattern_stripe()
for straight lines instead of waves.
if (require("grid")) { x_hex <- 0.5 + 0.5 * cos(seq(2 * pi / 4, by = 2 * pi / 6, length.out = 6)) y_hex <- 0.5 + 0.5 * sin(seq(2 * pi / 4, by = 2 * pi / 6, length.out = 6)) grid.newpage() grid.pattern_wave(x_hex, y_hex, colour = "black", type = "sine", fill = c("red", "blue"), density = 0.4, spacing = 0.15, angle = 0, amplitude = 0.05, frequency = 1 / 0.20) # zig-zag pattern is a wave of `type` "triangle" grid.newpage() grid.pattern_wave(x_hex, y_hex, colour = "black", type = "triangle", fill = c("red", "blue"), density = 0.4, spacing = 0.15, angle = 0, amplitude = 0.075) }![]()
![]()