使用R闪亮和DT包,我正在创建特定的表。列数随用户输入而变化&不是固定的。我已经包含了下面的代码片段,以包含一个水平滚动条,以便当列数很大时,用户可以滚动那些不可直接可见的列。
服务器。R:
output$results <- DT::renderDataTable({
DT::datatable(data = datasetInput(),
options = list(scrollX = TRUE,...)
)
})
<code reduced for brevity>使用上述代码,水平滚动条一开始是不可见的,但当我单击一行并单击键盘上的右箭头时会出现。无论我有多少列,一旦表被激活,滚动条是否会变得可见?我可以使用鼠标指针拖动滚动条吗?
更新
我尝试了下面的答案中的代码,这就是我所看到的-没有水平滚动条。

发布于 2015-06-10 19:27:43
如果您不需要滚动条,我不认为可以(或者应该)强制滚动条,但是上面的代码对我来说很好,它显示了页面初始化时的滚动条。也许问题出在数据或者别的什么方面。
下面是一个在页面加载中有水平滚动条的最小示例
runApp(shinyApp(
ui = fluidPage(
DT::dataTableOutput("results", width = 300)
),
server = function(input, output, session) {
output$results <- DT::renderDataTable(
mtcars,
options = list(scrollX = TRUE)
)
}
))发布于 2016-12-12 04:10:42
试试这个:
DT::datatable(sta, options = list(
pageLength=50, scrollX='400px'), filter = 'top')发布于 2018-11-28 16:44:15
我也会这样做的:
datasetInput1 <- reactive({
infile <- input$file1
if(is.null(infile))
return(NULL)
else
m <- read.csv(infile$datapath, header = input$header)
return ( DT::datatable(m, extensions = 'Scroller', options = list(deferRender = F, dom = 't',
columnDefs = list(list(className = 'dt-center',
targets = 5)),
scrollY = 300, scroller = TRUE, scrollX = T,
pageLength = 5))
)
})https://stackoverflow.com/questions/30765338
复制相似问题