Изменить цвет фона в процентах, используя styleinterval - PullRequest
0 голосов
/ 15 января 2019

enter image description here

Мы используем таблицу данных в R, чтобы показать статистику различных значений.Некоторые представляют собой простые значения точек, а некоторые представляют собой проценты, значения без знака процента (%) окрашены, но значения со знаком процента (%) не окрашены должным образом.

Помогите нам применить цвета к обоим типам значенийс и без знака процента, спасибо заранее.

Вот фрагмент кода, который я использую для раскраски:

backgroundColor = styleInterval(c(-0.000001,0.000001), c("red",'lightgrey','lightgreen'))

1 Ответ

0 голосов
/ 08 июня 2019

Вы можете создать новый столбец, содержащий числовые значения, и использовать этот столбец в аргументе valueColumns formatStyle. Вы также можете скрыть это с помощью опции columnDefs. Вот пример:

dat <- data.frame(
  C1 = c("A", "B", "C"),
  C2 = c(4, "5%", "-6%")
)
dat$C2numeric <- stringr::str_extract(dat$C2, "\\-*\\d+\\.*\\d*")

datatable(dat, options = list(
  columnDefs = list(
    list(targets=-1, visible=FALSE)
  )
)) %>%
  formatStyle(2, valueColumns = ncol(dat), 
              backgroundColor = styleInterval(c(-0.000001,0.000001), c("red",'lightgrey','lightgreen')))
...