r - 为什么 Datatable 使用闪亮打破最后一个酒吧?
解决方案
你可能用过styleColorBar
. 使用此函数,包含最小值的单元格的条的长度为 0,因此您得到的输出是预期的。要获得一个长度与值成比例的条形,您可以使用styleColorBar2
下面提供的我的函数。此函数接受两种颜色,一种用于负值,另一种用于正值。
library(DT)
modelData <- data.frame(Channel = c("A", "B", "C"),
Current = c(2000, 3000, 4000),
Modified = c(2500, 3500, 3000),
New_Membership = c(500, 500, -1000),
stringsAsFactors = FALSE)
styleColorBar2 <- function (data, color1, color2)
{
M <- max(abs(data), na.rm = TRUE)
js <- c(
"value <= 0 ? ",
sprintf("'linear-gradient(90deg, transparent ' + (1+value/%f) * 100 + '%%, %s ' + (1+value/%f) * 100 + '%%)'",
M, color1, M),
" : ",
sprintf("'linear-gradient(90deg, transparent ' + (1-value/%f) * 100 + '%%, %s ' + (1-value/%f) * 100 + '%%)'",
M, color2, M)
)
JS(js)
}
datatable(
modelData , selection = 'none', editable = TRUE
) %>% formatStyle(
'New_Membership',
background = styleColorBar2(modelData$New_Membership, "red", "lightblue"),
backgroundSize = '100% 50%',
backgroundRepeat = 'no-repeat',
backgroundPosition = 'center'
)
推荐阅读
- python - Visual Studio 代码报告 docopt 导入错误,而 bash 终端没有问题
- python - 查看 SageMaker 模型容器的实际代码?
- javascript - 将 Larvel Debugbar 同步到 Vue 的 UI
- php - 用户表单数据更新查询 PHP
- ruby-on-rails - 从另一个数据库表中自动填充一个数据库表。导轨 API
- azure - Azure 数据目录是否有访问日志或元数据
- javascript - 按嵌套数组对数组进行分组
- git - 如何使用 git stash apply 应用多个存储
- python - 如何与海龟画布/屏幕尺寸正确交互?
- javascript - React Navigation 6 - 自定义标题高度