首页 > 解决方案 > 列宽不会针对某些类型的数据自动调整

问题描述

我目前正在使用 flexdashboard 构建仪表板,并希望在仪表板上显示一个选项卡,以显示使用 R 中的 datatable 函数组织成数据表的原始数据。

当仪表板生成时,由于该字符串中的一些大字符条目,行具有很大的高度。例如,某些 id 格式为“xxxxxx-xxxx-xxxx-xxxxxx”。但是,它不会像这样显示它们,它们通常在显示为的行中:

xxxxxx-
xxxx-
xxxx-
xxxxxx

创造巨大的高度。

YYYY-MM-DD HH:MM:SS 格式的日期格式也会发生类似的情况,但是当使用非常长的字符串且其中没有任何“-”时不会出现此问题。例如,列宽将针对“xxxxxxxxxxxxxxxxxxxxxxx”进行适当调整

我查看了stackoverflow并找不到类似的东西,问题主要是关于autoWidth没有设置为true。如前所述,列宽会针对某些类型的字符串自动调整,而不是其中带有“-”的字符串。

datatable(data1,
          rownames=T,
          filter ="top",
          options=list(pageLength=100,
                       autoWidth=T,
                       scrollX=T))

标签: rshinyflexdashboard

解决方案


您可以使用该类禁用包装nowrap

DT::datatable(
  class = "display nowrap",
  extensions = c('Buttons','Scroller'),
  ...…

推荐阅读