Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我无法在R中设置datatable列宽_R_Shiny_Dt - Fatal编程技术网

我无法在R中设置datatable列宽

我无法在R中设置datatable列宽,r,shiny,dt,R,Shiny,Dt,我试图在datatable中显示我的项目数据,但有些项目在其描述字段中有一些非常长的字符串,因此整个datatable的范围很广。我想把整个事情缩小一些,但似乎什么都不管用。我已经试过使用这个: div(DT::dataTableOutput("tableoutput"), style = "font_size: 75%; width: 75%") 还尝试在主面板中添加width=“XXXpx”,但表仍然太宽。我想知道是否有办法包装长字符串或设置列宽 以下是给我带来麻烦的代码: 用户界面 服务

我试图在datatable中显示我的项目数据,但有些项目在其描述字段中有一些非常长的字符串,因此整个datatable的范围很广。我想把整个事情缩小一些,但似乎什么都不管用。我已经试过使用这个:

div(DT::dataTableOutput("tableoutput"), style = "font_size: 75%; width: 75%")
还尝试在主面板中添加
width=“XXXpx”
,但表仍然太宽。我想知道是否有办法包装长字符串或设置列宽

以下是给我带来麻烦的代码: 用户界面

服务器

server <- function(input, output, session) {
 observeEvent(input$selectinput, {
 selected_mod <- as.numeric(str_extract(input$selectinput, "(?<=\\]\\[)(\\d+)"))
    temp <- rvalues$fields[rvalues$fields$mod_id == selected_mod,]
    temp$mod_id = NULL
    temp <- temp[, basic_score:=as.numeric(basic_score)]
    temp$condition <- ifelse(as.numeric(temp$basic_score != 0), 1, 0)
    output$tableoutput <- DT::renderDataTable(
      DT::datatable(temp, options = list(paging = FALSE,
                                         searching = FALSE,
                                         columnDefs = list(
                                           list(targets = 6,visible = FALSE)
                                           )))
      %>% formatStyle(
        'basic_score', 'condition',
        backgroundColor = styleEqual(c(0, 1), c('red', 'green'))
      )
})
}

server您可以在
option=
中包含一些参数来设置宽度和进行其他更改

例如,以下代码排除第6列,并将mtcars的cols 1和3的宽度设置为50 px

     DT::datatable(mtcars, options = list(
      autoWidth = TRUE,
      columnDefs = list(list(targets = 6,visible = FALSE),
         list(width = '50px', targets = c(1, 3)))
    ))

有关更多详细信息,请参见您可以在
选项=
中包含一些参数来设置宽度和进行其他更改

例如,以下代码排除第6列,并将mtcars的cols 1和3的宽度设置为50 px

     DT::datatable(mtcars, options = list(
      autoWidth = TRUE,
      columnDefs = list(list(targets = 6,visible = FALSE),
         list(width = '50px', targets = c(1, 3)))
    ))

有关更多详细信息,请参见

您是否查看了它似乎相关,并且可能有用?您是否查看了它似乎相关,并且可能有用?是的,但是我遇到了麻烦,因为我不确定如何组合许多不同的选项,例如,我的代码有一个选项使一列不可见
columnDefs=list(list(targets=6,visible=FALSE))
columnDefs=list(list(targets=6,visible=FALSE),list(width='50px',targets=c(1,3)))里面应该有几个列表。是的,但我遇到了麻烦,因为我不知道如何组合许多不同的选项,例如,我的代码有一个选项使一列不可见
columnDefs=list(list(targets=6,visible=FALSE))
columnDefs=list(list(targets=6,visible=FALSE),list(width='50px',targets=c(1,3))中应该有几个列表