Change the unit of figure size

By default, R Markdown employs inch as a unit of figure size. You can change it by hook_figure_unit.

CAUTIONS

  • This hook must not run twice in a document. Otherwise, you will face unexpected figure size.
  • RStudio IDE do not detect the hook and treats fig.width and fig.height in inches.
  • This hook sets NULL to the fig.retina chunk option.

Basic usage

hook_figure_unit() changes to the unit of figure size to millimeters. Note that this hook will not change the default size.

library(chunkhooks)
hook_figure_unit()
#> fig.retina is set NULL
# fig.width=50, fig.height=50 (50mm * 50mm)
plot(1)

Other units

You may change default unit by the first argument, unit.

hook_figure_unit("cm")

Choices are followings:

measurements::conv_unit_options$length
#>  [1] "angstrom"   "nm"         "um"         "mm"         "cm"        
#>  [6] "dm"         "m"          "meter"      "metre"      "km"        
#> [11] "inch"       "in"         "ft"         "foot"       "feet"      
#> [16] "yd"         "yard"       "fathom"     "mi"         "mile"      
#> [21] "naut_mi"    "au"         "AU"         "light_yr"   "light_year"
#> [26] "parsec"     "point"