代码之家  ›  专栏  ›  技术社区  ›  Mark

如何在datatable列中添加stylecolorbar,同时将整个表的背景设置为白色?

  •  0
  • Mark  · 技术社区  · 5 年前

    我知道如何将数据表的背景设置为白色:

    formatStyle(names(mtcars), background = '#fff')
    

    以及如何添加 styleColorbar 在下面的演示代码中可以看到,但是它们一起失败了。如何将两者结合起来?我现在以彩色条结束,但是目标列的背景又是白蓝相间的…

    enter image description here

    datatable(mtcars, escape=FALSE , rownames = F,
              options = list(dom = 't', 
                             pageLength = 100)) %>%
        formatStyle(names(mtcars), background = '#fff') %>% formatStyle('cyl',
                                                                             background = styleColorBar(range(mtcars$cyl), '#339fff'),
                                                                             backgroundSize = '98% 88%',
                                                                             backgroundRepeat = 'no-repeat',
                                                                             backgroundPosition = 'center')
    
    0 回复  |  直到 5 年前
        1
  •  0
  •   Mark    5 年前

    感谢github上dt包的贡献者: 这是一个解决办法

    datatable(
      mtcars, escape=FALSE , rownames = F,
      options = list(dom = 't', pageLength = 100),
      callback = JS("tmp = table.$('tr').css('background-color', '#fff');")
    ) %>%
      formatStyle(
        'cyl',
        background = styleColorBar(range(mtcars$cyl), '#339fff'),
        backgroundSize = '98% 88%',
        backgroundRepeat = 'no-repeat',
        backgroundPosition = 'center'
      )