gpt4 book ai didi

删除最终用户对列进行排序的能力

转载 作者:行者123 更新时间:2023-12-01 13:15:55 25 4
gpt4 key购买 nike

我有一个大型数据表对象,我想限制某些列的可排序性。我想我必须使用 options 参数,但我对 JavaScript 的了解还没有达到我知道如何将它与函数参数集成的程度。

我以下面的代码为例:

library(DT)

# Create Columns and dataframe
letters <- c("a", "b", "c", "d")
numbers <- c(1, 2, 3, 4)
words <- c("the", "quick", "brown", "fox")
df <- data.frame(letters, numbers, words, stringsAsFactors = FALSE)

# Create Data Table
htmlDf <- datatable(df, rownames = FALSE)

我还有以下代码片段,我试图将其添加到选项参数中。小代码块来自 https://datatables.net/reference/option/columns.orderable .

    $('#example').dataTable( {
"columns": [
{null,
"orderable": false },
null,
]
} );

出于这个问题的目的,假设我希望删除对“数字”列进行排序的功能。

谢谢!

注意:这不适用于 Shiny App。

最佳答案

site for the R package DT提供了一些关于如何将 javascript 选项从 datatables 转换为 R 语法的很棒的教程。

本质上,您所做的是将反射(reflect) JavaScript 代码结构的嵌套命名列表传递到 datatable 函数的 options 参数中。所以在你的情况下,你会想要这样做:

htmlDf <- datatable(df,
rownames = FALSE,
options = list(
columnDefs = list(
list(orderable = F,
targets = c(1))
)
)
)

这很好地将 orderable = FALSE 条件应用于第 1 列。请注意,您必须使用 JavaScript 样式 0-indexing 而不是 R 样式 1-indexing:

enter image description here

关于删除最终用户对列进行排序的能力,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55067319/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com