grid.grep {grid} | R Documentation |
Search for Grobs and/or Viewports
Description
Given a path, find all matching grobs and/or viewports on the display list or within a given grob.
Usage
grid.grep(path, x = NULL, grobs = TRUE, viewports = FALSE,
strict = FALSE, grep = FALSE, global = FALSE,
no.match = character(), vpPath = viewports)
Arguments
path |
a gPath or a vpPath or a character value that could be interpreted as either. |
x |
a grob or |
grobs |
A logical value indicating whether to search for grobs. |
viewports |
A logical value indicating whether to search for viewports. |
strict |
A boolean indicating whether the |
grep |
Whether the |
global |
A boolean indicating whether the function should affect just the
first match of the |
no.match |
The value to return if no matches are found. |
vpPath |
A logical value indicating whether to return the vpPath for each grob as an attribute of the result. |
Value
Either a gPath or a vpPath or,
if global
is TRUE
a list of gPaths and/or vpPaths.
If vpPath
is TRUE
, each gPath result will have an
attribute "vpPath"
.
If there are no matches, no.match
is returned.
See Also
grid.ls()
Examples
# A gTree, called "grandparent", with child gTree,
# called "parent", with childrenvp vpStack (vp2 within vp1)
# and child grob, called "child", with vp vpPath (down to vp2)
sampleGTree <- gTree(name="grandparent",
children=gList(gTree(name="parent",
children=gList(grob(name="child", vp="vp1::vp2")),
childrenvp=vpStack(viewport(name="vp1"),
viewport(name="vp2")))))
# Searching for grobs
grid.grep("parent", sampleGTree)
grid.grep("parent", sampleGTree, strict=TRUE)
grid.grep("grandparent", sampleGTree, strict=TRUE)
grid.grep("grandparent::parent", sampleGTree)
grid.grep("parent::child", sampleGTree)
grid.grep("[a-z]", sampleGTree, grep=TRUE)
grid.grep("[a-z]", sampleGTree, grep=TRUE, global=TRUE)
# Searching for viewports
grid.grep("vp1", sampleGTree, viewports=TRUE)
grid.grep("vp2", sampleGTree, viewports=TRUE)
grid.grep("vp", sampleGTree, viewports=TRUE, grep=TRUE)
grid.grep("vp2", sampleGTree, viewports=TRUE, strict=TRUE)
grid.grep("vp1::vp2", sampleGTree, viewports=TRUE)
# Searching for both
grid.grep("[a-z]", sampleGTree, viewports=TRUE, grep=TRUE, global=TRUE)