R tablegrob условного форматирования для установки цветов на основе значений столбцов

Есть ли способ условного форматирования столбца tableGrob или gtable объекта и цвет (красный, желтый или зеленый) его на основе условного формата? Например:

library(gridExtra)
library(grid)
d = head(iris, 20)
d
grob=tableGrob(d)

Я хочу изменить Sepal.Width и раскрасить его, основываясь на значениях Petal.Length. Если Petal.Length = 1.1, тогда установите его на красный, если это 1.4, тогда установите на желтый, а если 1.7, то на зеленый.

1 ответ

condformat Пакет может быть использован для этого, и его синтаксис довольно очевиден, я считаю:

library(condformat)
data(iris)
condformat(head(iris, 20)) %>%
  rule_fill_discrete(
    columns = Sepal.Width,
    expression = Petal.Length,
    colours = c("1.1" = "red", "1.4" = "yellow", "1.7" = "green")) %>%
  condformat2grob()

результат

Другие вопросы по тегам