grid.pattern_pch() draws a plotting character pattern onto the graphic device.
grid.pattern_pch(
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,
units = "snpc",
scale = 0.5,
shape = 1L,
grid = "square",
type = NULL,
subtype = NULL,
rot = 0,
alpha = gp$alpha %||% NA_real_,
linetype = gp$lty %||% 1,
linewidth = size %||% gp$lwd %||% 1,
size = NULL,
default.units = "npc",
name = NULL,
gp = gpar(),
draw = TRUE,
vp = NULL
)A numeric vector or unit object specifying x-locations of the pattern boundary.
A numeric vector or unit object specifying y-locations of the pattern boundary.
A numeric vector used to separate locations in x, y into multiple boundaries.
All locations within the same id belong to the same boundary.
Currently ignored.
Stroke colour(s).
Fill colour(s) or grid::pattern() / gradient object(s).
Rotation angle in degrees.
Approx. fraction of area the pattern fills.
Spacing between repetitions of pattern (in units units).
Shift pattern along x axis (in units units).
Shift pattern along y axis (in units units).
grid::unit() units for spacing, xoffset, and yoffset parameters.
For star polygons, multiplier (between 0 and 1) applied to exterior radius to get interior radius.
An integer from 0 to 25 or NA.
See graphics::points() for more details.
Note we only support these shapes and do not
support arbitrary ASCII / Unicode characters.
Adjusts placement and density of certain graphical elements.
"square" (default) is a square grid.
"hex" is a hexagonal grid suitable for hexagonal and triangular tiling.
"hex_circle" is a hexagonal grid suitable for circle packing.
"elongated_triangle" is a grid used for the "elongated triangle" tiling.
Adjusts the repeating of certain aesthetics such as color.
Can use any type in names_hex, names_square, or names_weave.
See for pattern_hex(), pattern_square(), and pattern_weave() for
more information about supported type arguments.
See for pattern_hex(), pattern_square(), and pattern_weave() for
more information about supported subtype arguments.
Angle to rotate regular polygon (degrees, counter-clockwise).
Alpha (between 0 and 1) or NA (default, preserves colors' alpha value).
Stroke linetype.
Stroke linewidth.
For backwards compatibility can be used to set linewidth.
A string indicating the default units to use if x or y
are only given as numeric vectors.
A character identifier.
An object of class "gpar", typically the output
from a call to the function gpar. This is basically
a list of graphical parameter settings.
A logical value indicating whether graphics output should be produced.
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.
grid.pattern_regular_polygon() which is used to implement this pattern.
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))
gp <- grid::gpar(col = "black", fill = "lightblue")
if (capabilities("png") || guess_has_R4.1_features("masks")) {
# pch 0-6 are simple shapes with no fill
grid.pattern_pch(x_hex, y_hex, shape = 0:6, gp = gp,
spacing = 0.1, density = 0.4, angle = 0)
}
if (capabilities("png") || guess_has_R4.1_features("masks")) {
# pch 7-14 are compound shapes with no fill
grid::grid.newpage()
grid.pattern_pch(x_hex, y_hex, shape = 7:14, gp = gp,
spacing = 0.1, density = 0.4, angle = 0)
}
if (capabilities("png") || guess_has_R4.1_features("masks")) {
# pch 15-20 are filled with 'col'
grid::grid.newpage()
grid.pattern_pch(x_hex, y_hex, shape = 15:20, gp = gp,
spacing = 0.1, density = 0.4, angle = 0)
}
if (capabilities("png") || guess_has_R4.1_features("masks")) {
# pch 21-25 are filled with 'fill'
grid::grid.newpage()
grid.pattern_pch(x_hex, y_hex, shape = 21:25, gp = gp,
spacing = 0.1, density = 0.4, angle = 0)
}
if (capabilities("png") || guess_has_R4.1_features("masks")) {
# using a 'basket' weave `type` with two shapes
grid::grid.newpage()
grid.pattern_pch(x_hex, y_hex, shape = c(1,4), gp = gp,
type = "basket",
spacing = 0.1, density = 0.4, angle = 0)
}