我对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)
非常感谢任何帮助。
答案 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");