Changes to grid for R 3.0.0

From R 3.0.0, there is a new recommended way to develop new grob classes in grid. In a nutshell, two new “hook” functions, makeContext() and makeContent() have been added to grid to provide an alternative to the existing hook functions preDrawDetails(), drawDetails(), and postDrawDetails(). There is also a new function called grid.force(). This article discusses why these changes have been made, provides a simple demonstration of the use of the new functions, and discusses some of the implications for packages that build on grid.

Paul Murrell

CRAN packages used

lattice, ggplot2, gtable, gridSVG, grImport, gridGraphviz, gridExtra

CRAN Task Views implied by cited packages

Graphics, Multivariate, Pharmacokinetics, Phylogenetics


Text and figures are licensed under Creative Commons Attribution CC BY 4.0. The figures that have been reused from other sources don't fall under this license and can be recognized by a note in their caption: "Figure from ...".


For attribution, please cite this work as

Murrell, "The R Journal: Changes to grid for R 3.0.0", The R Journal, 2013

BibTeX citation

  author = {Murrell, Paul},
  title = {The R Journal: Changes to grid for R 3.0.0},
  journal = {The R Journal},
  year = {2013},
  note = {},
  doi = {10.32614/RJ-2013-035},
  volume = {5},
  issue = {2},
  issn = {2073-4859},
  pages = {148-160}