防止列名在闪亮的 DataTable 中换行
Posted
技术标签:
【中文标题】防止列名在闪亮的 DataTable 中换行【英文标题】:Prevent column name wrap in shiny DataTable 【发布时间】:2015-09-26 09:54:48 【问题描述】:我有一个闪亮的 DataTable(包“DT”),它有很长的列名(+ 空格),我想在没有名称包装的情况下呈现它 - 即 colnames 包裹在 2-3 行上。我启用了水平滚动来尝试并促进这一点:
renderDataTable(dataframe_with_long_colnames, ..., options = list(scrollX = TRUE))
但默认情况下,空格会折叠成新行。
我认为这回答了我的问题: https://www.datatables.net/forums/discussion/8923/how-do-you-stop-the-header-from-wrapping-into-multiple-rows 但我不确定如何将其转换为 R 函数。
此外,这里列出了所有 DataTable 选项:https://www.datatables.net/reference/option/
提前致谢。
【问题讨论】:
【参考方案1】:在 ui.R 中,在呈现表格的行之前添加以下行:
tags$head(tags$style("#table1 white-space: nowrap; ")),
将table1
替换为xxxxx
在server.R
文件中的输出语句中
output$`xxxxx`<-renderDataTable(.....
【讨论】:
好答案 - 谢谢!就我而言,已经定义了 tags$head,所以我只需要提供:“tags$style(html('#current_datawhite-space:nowrap'))” - 不要忘记 '#'! 【参考方案2】:您可以简单地使用nowrap
类:
library(DT)
dat <- data.frame(
"This is a looooooooooooooooonnnnnnnnnnnnggggggg column name" = c(1,2),
"This is also a looooooooooooooooooonnnnnnnnnnnggggggg column name" = c(3,4),
check.names = FALSE
)
datatable(dat, class = "display nowrap")
【讨论】:
以上是关于防止列名在闪亮的 DataTable 中换行的主要内容,如果未能解决你的问题,请参考以下文章