This creates a simple wrapper around a function for use in map_xxx. Useful functions include scales and palettes from the scales package.

by_function(inner_fn, ignore_na = TRUE)

Arguments

inner_fn

A one-argument function which maps cell values to property values.

ignore_na

If TRUE, NA values in the result will be left unchanged from their previous values. Otherwise, NA normally resets to the default.

Value

A function for use in map_*** functions.

Details

The argument of inner_fn will be as.matrix(ht[row, col]). Be aware how matrix conversion affects the mode of cell data.

See also

Examples

ht <- as_hux(matrix(runif(20), 5, 4))

map_background_color(
  ht,
  by_function(grey)
)
#>                          0.836    0.996   0.634   0.867  
#>                          0.709    0.5     0.859   0.249  
#>                          0.874    0.359   0.567   0.403  
#>                          0.0115   0.775   0.253   0.77   
#>                          0.888    0.584   0.919   0.119  
#> 
#> Column names: V1, V2, V3, V4

if (requireNamespace("scales")) {
  map_text_color(ht, by_function(
    scales::seq_gradient_pal()
  ))
}
#>                          0.836    0.996   0.634   0.867  
#>                          0.709    0.5     0.859   0.249  
#>                          0.874    0.359   0.567   0.403  
#>                          0.0115   0.775   0.253   0.77   
#>                          0.888    0.584   0.919   0.119  
#> 
#> Column names: V1, V2, V3, V4