将文本颜色添加到DT Shiny数据表中的特定列名称(标题)

时间:2016-01-28 12:48:18

标签: shiny dt

我对Shiny中的DT相当新,并希望将文本颜色添加到表中的特定列,我可以使用formatStyle按照下面的示例代码块执行此操作。但是,我还想将相同的文本颜色添加到相应的列名称(标题),是否有一种简单的方法可以做到这一点?

library(shiny)
library(DT)

ui = fluidPage(DT::dataTableOutput('fDataTable'))

server = function(input, output) {
  output$fDataTable = DT::renderDataTable({
    DT::datatable(iris) %>%
      formatStyle(columns = 1, color = "red") %>%
      formatStyle(columns = 3, color = "blue")
  })
}  

app = list(ui = ui, server = server)
runApp(app)

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:6)

您可以通过将CSS添加到正在呈现的表格的FALSE来执行此操作(您还需要将library(shiny) library(DT) ui = fluidPage(DT::dataTableOutput('fDataTable')) server = function(input, output) { output$fDataTable = DT::renderDataTable({ iris_coloured <- iris colnames(iris_coloured)[c(1,3)] <- paste0('<span style="color:',c("red","blue"),'">',colnames(iris)[c(1,3)],'</span>') DT::datatable(iris_coloured,escape=F) %>% formatStyle(columns = 1, color = "red") %>% formatStyle(columns = 3, color = "blue") }) } app = list(ui = ui, server = server) runApp(app) 设置为<p>Abbreviate a long string: #{of:abbreviate(string1, 20)}</p> ,否则将转义html)。

以下是一个例子:

pdfConverter.ConvertUrlToFile("html url to convert","file_path.pdf");