如何使用DT格式化特定单元格?在此示例中,如何格式化第一列中> 0?
的每个单元格df = data.frame(
V1 = c(5, -31, '-2'),
V2 = c(-5, -7, '2'),
V3 = c(4, -10, '22'))
DT = datatable(df) %>%
formatStyle(...)
我认为类似backgroundColor = styleInterval(0, c('red', 'blue))
(在formatStyle()
中)可能会有效,但我没有运气。
答案 0 :(得分:1)
以下链接对我来说非常有用 - 有各种格式排列......
https://rstudio.github.io/DT/010-style.html
特定于列,其基于>而更改0:
library(DT)
df = data.frame(
V1 = c(5, -31, '-2'),
V2 = c(-5, -7, '2'),
V3 = c(4, -10, '22'))
DT = DT::datatable(df) %>%
formatStyle('V1', backgroundColor = styleInterval(c(0),c('red','blue')))
可能是c()将剪切指定为向量...
以下是格式化单元格的示例(但这是一个轻微的黑客攻击 - 不确定自己是另一种方式)
df = data.frame(
V1 = c(5, -31, '-2'),
V2 = c(-5, -7, '2'),
V3 = c(4, -10, '22'))
现在创建一个包含'标记的列。值
df$FLAG <- c(0,0.5,1)
现在创建您选择的样式/颜色并格式化数据框(然后我使FLAG(4)列不可见,看起来好像是格式化了单元格)
styles <- c("rgb(245,242,242)",
"rgb(254, 204, 116)","rgb(255,83,83)")
datatable(df, caption = 'Test Format',
options = list(dom='t',columnDefs =
list(list(visible=FALSE,
targets=4)))) %>%
formatStyle("V1","FLAG",
backgroundColor = styleEqual(c(0,0.5,1),styles))
注意dom =&#39; t&#39;只是省略了数据表过滤和分页;而columnDefs用于省略FLAG列