仅在下载时抑制数据 table 中的行名称
Supress rownames in data table on download only
我有以下代码可以下载 Excel 中的数据 table。下面我抑制行名称。但是,是否可以仅在下载时抑制行名称?当我在 Shiny 中查看 table 时,我仍然希望它们出现。
format_fixed_table <- function(input_data, file_name){
result <- datatable(input_data, extensions = 'Buttons',rownames= FALSE,
options = list(dom = 'Bfrtip',
scrollX = TRUE,
lengthMenu = c(10, 20, 50),
pageLength = 10,
buttons = list(list(extend='excel', filename=file_name)),
))
}
行名列是第0列。您可以使用 columnDefs
选项将 class 分配给此列,例如rownames
,并使用 exportOptions
选项 select 没有此 class 的列,使用 :not
select 或:
library(DT)
datatable(
iris[1:5,],
extensions = 'Buttons',
rownames= TRUE,
options = list(
dom = 'Bfrtip',
columnDefs = list(
list(
targets = 0, className = "rownames"
)
),
buttons = list(
list(
extend = 'excel',
filename = "XLSXFILE",
exportOptions = list(
columns = ":not(.rownames)"
)
)
)
)
)
我有以下代码可以下载 Excel 中的数据 table。下面我抑制行名称。但是,是否可以仅在下载时抑制行名称?当我在 Shiny 中查看 table 时,我仍然希望它们出现。
format_fixed_table <- function(input_data, file_name){
result <- datatable(input_data, extensions = 'Buttons',rownames= FALSE,
options = list(dom = 'Bfrtip',
scrollX = TRUE,
lengthMenu = c(10, 20, 50),
pageLength = 10,
buttons = list(list(extend='excel', filename=file_name)),
))
}
行名列是第0列。您可以使用 columnDefs
选项将 class 分配给此列,例如rownames
,并使用 exportOptions
选项 select 没有此 class 的列,使用 :not
select 或:
library(DT)
datatable(
iris[1:5,],
extensions = 'Buttons',
rownames= TRUE,
options = list(
dom = 'Bfrtip',
columnDefs = list(
list(
targets = 0, className = "rownames"
)
),
buttons = list(
list(
extend = 'excel',
filename = "XLSXFILE",
exportOptions = list(
columns = ":not(.rownames)"
)
)
)
)
)