我知道我可以对闪亮的数据表使用条件格式,但是它似乎基于指定列。如果该行中的任何位置满足条件,是否可以突出显示一行?
到目前为止,我已经使用过(from the datatable examples):
library(DT)
options(DT.options = list(pageLength = 5))
df = as.data.frame(cbind(matrix(round(rnorm(50), 3), 10), sample(0:1, 10, TRUE)))
datatable(df) %>% formatStyle(
'V6',
target = 'row',
backgroundColor = styleEqual(c(0, 1), c('gray', 'yellow'))
)
但是我希望它搜索所有列,而不仅仅是V6。
答案 0 :(得分:1)
您可以定义一个用于对行进行样式设置的附加虚拟列:
library(DT)
## add style column
df$styleCol <- apply(df, 1, function(x) as.numeric(any(x >= 1)))
## highlight rows in yellow if any column >= 1
datatable(df, options = list(
columnDefs = list(list(targets = 6, visible = FALSE))
)) %>% formatStyle(
"styleCol",
target = "row",
backgroundColor = styleEqual(c(0, 1), c("gray", "yellow"))
)
数据
set.seed(1)
df <- as.data.frame(cbind(matrix(round(rnorm(50), 3), 10)))