默认折叠 DT table 列
Collapse DT table columns by default
根据以下文档 (https://rstudio.github.io/DT/extensions.html),
下面的代码应该默认折叠第一列和第二列 (0,1),但在尝试时它默认显示所有列。
我们可以默认只显示 2 列吗?
datatable(
iris2, rownames = FALSE,
extensions = 'Buttons', options = list(
dom = 'Bfrtip',
buttons = list(list(extend = 'colvis', columns = c(2, 3, 4)))
)
)
您必须使用 columnDefs
隐藏列:
datatable(
iris, rownames = FALSE,
extensions = 'Buttons', options = list(
dom = 'Bfrtip',
buttons = list(list(extend = 'colvis', columns = c(2, 3, 4))),
columnDefs = list(
list(targets = c(2,3,4), visible = FALSE)
)
)
)
编辑
在您的评论中,您要求“显示全部”功能(您应该打开一个新问题,但是很好)。这是我找到的方法:
datatable(
iris, rownames = FALSE,
extensions = 'Buttons', options = list(
dom = 'Bfrtip',
buttons = list(
list(
extend = 'colvis',
columns = c(2, 3, 4)
),
list(
extend = 'colvisGroup',
text = "Show all",
show = ":hidden"
),
list(
extend = 'colvisGroup',
text = "Show none",
hide = ":visible"
)
),
columnDefs = list(
list(targets = c(2,3,4), visible = FALSE)
)
)
)
根据以下文档 (https://rstudio.github.io/DT/extensions.html), 下面的代码应该默认折叠第一列和第二列 (0,1),但在尝试时它默认显示所有列。
我们可以默认只显示 2 列吗?
datatable(
iris2, rownames = FALSE,
extensions = 'Buttons', options = list(
dom = 'Bfrtip',
buttons = list(list(extend = 'colvis', columns = c(2, 3, 4)))
)
)
您必须使用 columnDefs
隐藏列:
datatable(
iris, rownames = FALSE,
extensions = 'Buttons', options = list(
dom = 'Bfrtip',
buttons = list(list(extend = 'colvis', columns = c(2, 3, 4))),
columnDefs = list(
list(targets = c(2,3,4), visible = FALSE)
)
)
)
编辑
在您的评论中,您要求“显示全部”功能(您应该打开一个新问题,但是很好)。这是我找到的方法:
datatable(
iris, rownames = FALSE,
extensions = 'Buttons', options = list(
dom = 'Bfrtip',
buttons = list(
list(
extend = 'colvis',
columns = c(2, 3, 4)
),
list(
extend = 'colvisGroup',
text = "Show all",
show = ":hidden"
),
list(
extend = 'colvisGroup',
text = "Show none",
hide = ":visible"
)
),
columnDefs = list(
list(targets = c(2,3,4), visible = FALSE)
)
)
)