В вашем вопросе tt непонятно, если вы хотите изменить цвет текста или ячейки
Для цвета текста, используя formattable
, вы можете сделать:
library(formattable)
formattable(df, list(
prev_score = formatter("span",
style = ~style(font.weight = "bold", color =
ifelse(change > 0,"darkblue",
ifelse(change == 0,"blue",
ifelse(change <0, "lightblue",NA)))))
))
![enter image description here](https://i.stack.imgur.com/zXuZf.png)
Для окраски поля, а не текста, вы можете сделать следующее:
formattable(scores, list(
prev_score = formatter("span",
style = ~style(display = "block",
font.weight = "bold",
color = "white",
"border-radius" = "4px",
"padding-right" = "4px",
"background-color" =
ifelse(change > 0,"darkblue",
ifelse(change == 0,"blue",
ifelse(change <0, "lightblue",NA)))))
))
![enter image description here](https://i.stack.imgur.com/H8Rcr.png)
Отвечает ли он на ваш вопрос?
Воспроизводимый пример
df <- data.frame(id = 1:5,
prev_score = c(10, 8, 6, 8, 8),
cur_score = c(8, 9, 7, 8, 9),
change = c(-2, 1, 1, 0, 1))