library(grid) ## Set up grid.newpage() pushViewport(viewport(name="a.vp")) grid.rect(name="a.grob") ## Default finds only grobs (no vpPath) result <- grid.grep("a", grep=TRUE, global=TRUE) result attr(result[[1]], "vpPath") ## 'viewports = TRUE' (and 'vpPath = TRUE') ## finds grobs and viewports (AND vpPath on grobs) result <- grid.grep("a", grep=TRUE, global=TRUE, viewports=TRUE) result attr(result[[2]], "vpPath") ## 'viewports = FALSE' and 'vpPath = TRUE' ## finds only grobs AND vpPath on grobs result <- grid.grep("a", grep=TRUE, global=TRUE, vpPath=TRUE) result attr(result[[1]], "vpPath") ## 'viewports = TRUE' and 'vpPath = FALSE' ## finds viewports and grobs (no vpPath) result <- grid.grep("a", grep=TRUE, global=TRUE, viewports=TRUE, vpPath=FALSE) result attr(result[[2]], "vpPath") ########################### ## global=FALSE versions ## grob (no vpPath) result <- grid.grep("a", grep=TRUE) result attr(result, "vpPath") ## viewport (NULL vpPath) result <- grid.grep("a", grep=TRUE, viewports=TRUE) result attr(result, "vpPath") ## grob with vpPath result <- grid.grep("a", grep=TRUE, vpPath=TRUE) result attr(result, "vpPath") ## viewport (NULL vpPath) result <- grid.grep("a", grep=TRUE, viewports=TRUE, vpPath=FALSE) result attr(result, "vpPath")