在我的 R Shiny 应用程序中,我有一个 DT 数据表,对于容器的可用水平空间来说,列数过多。因此,我使用
fillContainer=TRUE
使表格适合其容器,并且可以水平和垂直滚动。
我的问题是,这样做时,即使屏幕上有足够的垂直空间,也只能同时看到 2 行。下面给出了一个可重现的示例:
library(shiny)
library(DT)
ui <- fluidPage(
sidebarLayout(
sidebarPanel(dataTableOutput("DT")),
mainPanel()
)
)
server <- function(input, output) {
data<-mtcars
output$DT<-renderDT(
datatable(
data,
fillContainer=TRUE))
}
shinyApp(ui = ui, server = server)
您是否有一些技巧可以轻松增加表格中可见的行数,以提高独立于应用程序中可能存在的其他元素的可读性?当然,
height
的datatable
参数不会响应,因为fillContainer=TRUE
。除了摆弄 CSS 或 HTML 来修复容器的高度之外,是否还有其他选择(如果是这样,如何?)?
非常感谢!
我建议使用
scrollX = TRUE
而不是 fillContainer = TRUE
library(shiny)
library(DT)
library(datasets)
data <- mtcars
ui <- fluidPage(sidebarLayout(sidebarPanel(dataTableOutput("DT")), mainPanel()))
server <- function(input, output) {
data <- mtcars
output$DT <- renderDT(datatable(data, options = list(scrollX = TRUE, pageLength = 15L))) # alternative: scrollY = "80vh"
}
shinyApp(ui = ui, server = server)