| % File src/library/grid/man/patterns.Rd |
| % Part of the R package, https://www.R-project.org |
| % Copyright 1995-2015 R Core Team |
| % Distributed under GPL 2 or later |
| |
| \name{patterns} |
| \alias{patterns} |
| \alias{linearGradient} |
| \alias{radialGradient} |
| \alias{pattern} |
| \title{ Define Gradient and Pattern Fills } |
| \description{ |
| Functions to define gradient fills and pattern fills. |
| } |
| \usage{ |
| linearGradient(colours = c("black", "white"), |
| stops = seq(0, 1, length.out = length(colours)), |
| x1 = unit(0, "npc"), y1 = unit(0, "npc"), |
| x2 = unit(1, "npc"), y2 = unit(1, "npc"), |
| default.units = "npc", |
| extend = c("pad", "repeat", "reflect", "none"), |
| group = TRUE) |
| radialGradient(colours = c("black", "white"), |
| stops = seq(0, 1, length.out = length(colours)), |
| cx1 = unit(.5, "npc"), cy1 = unit(.5, "npc"), |
| r1 = unit(0, "npc"), |
| cx2 = unit(.5, "npc"), cy2 = unit(.5, "npc"), |
| r2 = unit(.5, "npc"), |
| default.units = "npc", |
| extend = c("pad", "repeat", "reflect", "none"), |
| group = TRUE) |
| pattern(grob, |
| x = 0.5, y = 0.5, width = 1, height = 1, |
| default.units = "npc", |
| just="centre", hjust=NULL, vjust=NULL, |
| extend = c("pad", "repeat", "reflect", "none"), |
| gp = gpar(fill="transparent"), |
| group = TRUE) |
| } |
| \arguments{ |
| \item{colours}{Two or more colours for the gradient to transition between.} |
| \item{stops}{Locations of the gradient colours between the start and end |
| points of the gradient (as a proportion of the distance from the |
| start point to the end point).} |
| \item{x1, y1, x2, y2}{The start and end points for a linear gradient.} |
| \item{default.units}{The coordinate system |
| to use if any location or dimension is |
| specified as just a numeric value.} |
| \item{extend}{What happens outside the start and end of the gradient |
| (see Details).} |
| \item{cx1, cy1, r1, cx2, cy2, r2}{The centre and radius of the start |
| and end circles for a radial gradient.} |
| \item{grob}{A grob (or a gTree) that will be drawn as the tile in |
| a pattern fill.} |
| \item{x, y, width, height}{The size of the tile for a pattern fill.} |
| \item{just, hjust, vjust}{The justification of the tile relative to |
| its location.} |
| \item{gp}{Default graphical parameter settings for the tile.} |
| \item{group}{A logical indicating whether the gradient or pattern is |
| relative to the bounding box of the grob or whether |
| it is relative to individual shapes within the grob.} |
| } |
| \details{ |
| Use these functions to define a gradient fill or pattern fill and |
| then use the resulting object as the value for \code{fill} |
| in a call to the \code{gpar()} function. |
| |
| The possible values of extend, and their meanings, are: |
| \itemize{ |
| \item[\code{pad}:] propagate the value of the gradient at its |
| boundary. |
| \item[\code{none}:] produce no fill beyond the limits of the |
| gradient. |
| \item[\code{repeat}:] repeat the fill. |
| \item[\code{reflect}:] repeat the fill in reverse. |
| } |
| |
| To create a tiling pattern, provide a simple grob (like a circle), |
| specify the location and size of the pattern to include the simple |
| grob, and specify \code{extend="repeat"}. |
| |
| On viewports, gradients and patterns are relative to the entire |
| viewport, unless \code{group = FALSE}, in which case they are |
| relative to individual grobs as they are drawn. |
| On gTrees, gradients and patterns are relative to a bounding |
| box around all of the children of the gTree, |
| unless \code{group = FALSE}, in which case they are |
| relative to individual children as they are drawn. |
| On grobs, gradients and patterns are relative to a bounding |
| box around all of the shapes that are drawn by the grob, |
| unless \code{group = FALSE}, in which case they are |
| relative to individual shapes. |
| } |
| \section{Warning}{ |
| Gradient fills and pattern fills are not supported on all graphics |
| devices. Where they are not supported, closed shapes will be |
| rendered with a transparent fill. Where they are supported, |
| not all values of \code{extend} are supported. |
| } |
| \value{ |
| A linear gradient or radial gradient or pattern object. |
| } |
| \author{Paul Murrell} |
| \seealso{ |
| \code{\link{gpar}} |
| } |
| \keyword{dplot} |