相关疑难解决方法(0)

R闪亮的数据表过滤器框大小要缩小才能看到文字

我正在构建一个R闪亮的仪表板,当我使用DT包和renderdatatable()将数据放入表中时.在每列的顶部,我有过滤器,搜索框太窄,无法查看文本并选择一个选项.这是一张图片:

在此输入图像描述

有谁知道增加宽度的方法?

这是我在server.r中的数据表代码的代码:

  output$table <- DT::renderDataTable(DT::datatable({    
    data <- rv$data
    if (input$sour != "All") {
      data <- data[data[,1] == input$sour,]
    }else{data}
    if (input$sour1 != "All") {
      data <-data[data[,2] == input$sour1,]
    }else{data}
    if (input$tran != "All") {
      data <-data[data[,3] == input$tran,]
    }else{data}
  },filter='top'))
Run Code Online (Sandbox Code Playgroud)

这是ui.r中的代码:

 tabItem(tabName = "ResultsTable",
              fluidPage(  
                headerPanel(
                  h1("List", align="center",  style = "font-family: 'Verdana';font-weight: 800; line-height: 1.1;   color: #151515;")),
                # fluidRow(
                #     column(8, DT::dataTableOutput("table",width = "100%"),offset = 2)))),
                #                 # Create a new Row in the UI for selectInputs
                fluidRow(

                  column(4, …
Run Code Online (Sandbox Code Playgroud)

datatable r filter shiny dt

10
推荐指数
1
解决办法
3115
查看次数

在R Shiny DataTable中设置列宽不适用于大量列的情况

我需要在R Shiny应用程序中设置DataTabe的列宽.我浏览了文档中的 数据表选项.另外,我在Stackoverflow中回顾了这个这个问题.

如果DataTable没有太多列,则设置宽度可以正常工作.但是,如果存在多个列,则尽管存在绝对宽度单位(例如'600px'),仍会覆盖设置.

在下面的代码片段中:

output$mytable <- DT::renderDataTable({
  num_of_cols <- 3
  cbind(iris,iris)[,1:num_of_cols]},
  options = list(autoWidth = TRUE,
  columnDefs = list(list(width = '500px', targets = 1))))
Run Code Online (Sandbox Code Playgroud)

如果我设置变量num_of_cols = 3它工作正常.num_of_cols但是,增加显示的列()会导致列宽减小.如果显示大量列,则宽度设置似乎无效.

我尝试过选项,autoWidth = FALSE但它没有给出不同的结果.我也尝试在线程drawCallback的答案部分中描述的选项中使用JavaScript,但它给出了相同的结果.

如何让DataTable显示所需的列宽设置?

r shiny

8
推荐指数
2
解决办法
5659
查看次数

R shiny - DT :: renderDataTable列宽

我正在制作一个闪亮的应用程序,并遇到了一个小而刺激性的问题.我生产的部分输出是使用输出DT::renderDataTable.只有两列,第一列的宽度将取决于输入数据集,所以我不想绝对地将宽度固定为任何东西.我已经看过这个帖子,其中一个答案中的代码在某种程度上起作用.但是,如果我第二次按下actionButton,表会自行调整大小以填充输出窗口的整个宽度.

有没有办法防止表再次按下操作按钮后自行调整大小?我知道,只用renderTabletableOutput会解决这个问题,但我喜欢dataTableOutput,并希望使用该功能.

对于MWE:

library("shiny")
library("DT")

mwe_ui <- shinyUI(fluidPage(
    sidebarLayout(
    sidebarPanel(
      titlePanel("Example"),
      sliderInput(inputId = "df",
                  label = "Degrees of Freedom:",
                  min=1 , max=50 , value=1 , step=1
      ),
      actionButton(inputId = "compute1",
                   label = "Sample"
      )
    ),
    mainPanel(
      dataTableOutput( outputId = "summary" )
    )
  )))

mwe_server <- function(input, output) {

  temp01  <- reactive({
    compute1 <- input$compute1
    if( compute1 > 0 ){
      isolate({
        aa <- round( runif(6, 4,20 ) )
        bb <- character() …
Run Code Online (Sandbox Code Playgroud)

r shiny

5
推荐指数
1
解决办法
3044
查看次数

R Shiny Dashboard DataTable 列宽

我正在构建一个 Shiny 仪表板,仪表板上的一个面板是 DataTable。

下面是我的代码:

  output$table = DT::renderDataTable(b1, selection = 'single')
Run Code Online (Sandbox Code Playgroud)

数据表中的列宽现在根据列名的宽度进行调整。但是,某些单元格值是文本,并且这些文本被压缩以显示在多行中,因为它们比列名称长。

我想知道是否有办法调整列宽以适应一行中的单元格值。

或者,有没有办法为列设置固定宽度并通过悬停来获取单元格值的全部内容?

提前致谢。

javascript r shiny shinydashboard dt

3
推荐指数
1
解决办法
813
查看次数

标签 统计

r ×4

shiny ×4

dt ×2

datatable ×1

filter ×1

javascript ×1

shinydashboard ×1