水平滚动 editableDTUI 和闪亮仪表板中的 editableDT

Horizontal scrolling in editableDTUI and editableDT in shiny dashboard

我需要为应用程序用户提供灵活性,以便他们可以 edit/modify table。我正在使用以下代码 UI代码:

tabItem(tabName = "manual_override",
            fluidRow(
              editableDTUI("table1")

服务器代码:

callModule(editableDT,"table1",data=reactive(bigtable),inputwidth=reactive(100))

但问题是 bigtable 有超过 15 列要显示,水平滚动条没有出现

我已经用 20 列的库 (DT) 进行了同样的尝试。 如果这能解决您的问题。

ui.r

library(shiny)

library(DT)

shinyUI(

  fluidPage(
   navbarPage("Big file upload + Horizental Scrolling",
            tabPanel("Data Import",
               fluidRow(
                 fileInput("file","Upload Your CSV",multiple = FALSE),
                 column(6,
                        div(style = 'overflow-x: scroll',  DT::dataTableOutput('csv_data')))
               )      
            )
   )
  )
)

server.r

library(shiny)
shinyServer(function(input, output) {

  csv_data_fun<-eventReactive(input$file,{
    df<-read.csv(input$file$datapath,
                 header =TRUE)
     return(df)
  })

  output$csv_data<-DT::renderDataTable({
    DT::datatable(csv_data_fun(),rownames = FALSE)%>%formatStyle(columns=colnames(csv_data_fun()),background = 'white',color='black')
  })
})

输出画面

请检查你是否需要这个

我已经完成了 editDT,但这次使用的是默认的 mtcars 数据集。 在 UI 部分添加了代码

div(style = 'overflow-x: scroll',editableDTUI("table1"))

新代码

library(shiny)
library(editData)

if (interactive()) {
  ui <- fluidPage(
    textInput("mydata","Enter data name",value="mtcars"),
    column(6, 
           div(style = 'overflow-x: scroll',editableDTUI("table1")
               )
    )
  )
  server <- function(input, output) {
    df=callModule(editableDT,"table1",dataname=reactive(input$mydata),inputwidth=reactive(170))

    output$test=renderPrint({
      str(df())
    })

  }
  shinyApp(ui, server)
}

这次请检查这是否解决了您的问题。您可以根据您的要求调整要更改的内容。 如果解决了您的问题,请采纳答案。