[英]I am failing to set datatable column width in R Shiny
我试图在数据表中显示我的项目数据,但是某些项目的描述字段中有一些很长的字符串,因此整个数据表的范围变得越来越宽。 我想以某种方式缩小整个范围,但是似乎没有任何效果。 我已经尝试使用此:
div(DT::dataTableOutput("tableoutput"), style = "font_size: 75%; width: 75%")
并尝试在主面板中添加width = "XXXpx"
,但是表格仍然太宽。 我想知道是否有办法包裹长字符串或设置列宽?
这是给我带来麻烦的代码:UI
mainPanel(
verbatimTextOutput("textoutput"),
div(DT::dataTableOutput("tableoutput"), style = "font_size: 75%; width: 75%")
)
服务器
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'))
)
})
}
您可以在option=
包含几个参数来设置宽度和进行其他更改。
例如,以下代码排除第6列,并将mtcar的第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)))
))
有关更多详细信息,请参见https://rstudio.github.io/DT/options.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.