尝试在 Shiny 的应用程序中使用深色主题来处理数据表 (DT) 包。我尝试了 shinytheme("cyborg")
并从 Bootswatch 下载了 cyborg CSS 表,(用于调用数据表,style="bootstrap"
)但它没有当我使用 shinytheme 时似乎不起作用。我需要为应用程序的其余部分使用 shinytheme,因为 css 取消了所有的绘图和间距等。是否有一个深色 CSS 我可以用来代替适用于 plotly 和数据表的 shinythemes?
library(shiny)
library(shinythemes)
library(DT)
ui<- fluidPage(theme = shinytheme("cyborg"),
fluidRow(column(7, DTOutput("showdata")))
)
server<-function(input, output) {
output$showdata<- DT::renderDT({
datatable(iris, rownames=F, filter="top", extensions = "Scroller", width = "100%", style="bootstrap",
options = list(deferRender = TRUE, scrollY = 300,scrollX=FALSE, scroller = TRUE, dom = 'tp'),
selection ='single' ) %>%
formatStyle(columns=colnames(iris),
backgroundColor = '#282828', color = "white")
})
}
shinyApp(ui=ui, server=server)
dark table screenshot 请注意,主要问题是过滤器文本没有出现(可能是白色的,因为 shinytheme)
最佳答案
如果将字体颜色设置为黑色,则可以使文本可见。只需在 header 中包含一些 CSS
,例如:div.dataTables_scrollHead span {color: black;}
示例用户界面:
ui <- fluidPage(theme = shinytheme("cyborg"),
tags$head(tags$style("div.dataTables_scrollHead span {color: black;}")),
fluidRow(column(7, DTOutput("showdata")))
)
输出:
关于css - 带有 Shiny 主题机器人的 Shiny 数据表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48954430/