grob()
and gTree()
are the basic creators,
grobTree()
and gList()
take several grobs to build a new
one.
## Grob Creation:grob (..., name = NULL, gp = NULL, vp = NULL, cl = NULL)
gTree(..., name = NULL, gp = NULL, vp = NULL, children = NULL,
childrenvp = NULL, cl = NULL)
grobTree(..., name = NULL, gp = NULL, vp = NULL,
childrenvp = NULL, cl = NULL)
gList(...)
## Grob Properties:
childNames(gTree)
is.grob(x)
grob
and gTree
, the
named slots describing important features of
the graphical object. For gList
and grobTree
,
a series of grob objects."gList"
object.viewport
object (or NULL
).gpar
. This is basically
a list of graphical parameter settings.viewport
object (or NULL
)."gTree"
object."grob"
, a graphical object."grob"
,
"gTree"
, or "gList"
object, or a new class derived from
one of these. A grid graphical object (grob()
and
gTree()
call the function validDetails
to check
that the object returned is internally coherent.
A "gTree"
can have other grobs as children; when a gTree is drawn, it
draws all of its children. Before drawing its children, a gTree
pushes its childrenvp
slot and then navigates back up (calls
upViewport
) so that the children can specify their location
within the childrenvp
via a vpPath
.
Grob names need not be unique in general, but all children of a
gTree must have different names.
A grob name can be any string, though it is not
advisable to use the gPath
separator (currently
::
) in grob names.
The function childNames
returns the names of the grobs
which are children of a gTree.
All grid primitives (grid.lines
, grid.rect
, ...)
and some higher-level grid components (e.g., grid.xaxis
and grid.yaxis
) are derived from these classes.
grobTree
is just a convenient wrapper for gTree
when the only components of the gTree are grobs (so all
unnamed arguments become children of the gTree).
The grid.grob
function is defunct.
grid.draw
,
grid.edit
,
grid.get
.