grid.edit(gPath, ..., strict = FALSE, grep = FALSE, global = FALSE, allDevices = FALSE, redraw = TRUE)
grid.gedit(..., grep = TRUE, global = TRUE)
editGrob(grob, gPath = NULL, ..., strict = FALSE, grep = FALSE, global = FALSE, warn = TRUE)
grid.edit
this
specifies a grob on the display list. For editGrob
this
specifies a descendant of the specified grob. gPath
should
be treated as a regular expression. Values are recycled across
elements of the gPath
(e.g., c(TRUE, FALSE)
means
that every odd element of the gPath
will be treated as
a regular expression).
gPath
, or whether all matches
should be affected.
editGrob
returns a grob object; grid.edit
returns NULL
.
editGrob
copies the specified grob and returns a modified
grob. grid.edit
destructively modifies a grob on the display list.
If redraw
is TRUE
it then redraws everything to reflect the change.
Both functions call editDetails
to allow a grob to perform
custom actions and validDetails
to check that the modified grob
is still coherent.
grid.gedit
(g
for global) is just a convenience wrapper for
grid.edit
with different defaults.
grob
, getGrob
,
addGrob
, removeGrob
.
grid.newpage()
grid.xaxis(name = "xa", vp = viewport(width=.5, height=.5))
grid.edit("xa", gp = gpar(col="red"))
# won't work because no ticks (at is NULL)
try(grid.edit(gPath("xa", "ticks"), gp = gpar(col="green")))
grid.edit("xa", at = 1:4/5)
# Now it should work
try(grid.edit(gPath("xa", "ticks"), gp = gpar(col="green")))
Run the code above in your browser using DataLab