R Can';t隐藏列并将行名设置为FALSE
我在Shiny中创建了一个数据表,它使用DT根据一组隐藏列中的值设置值的样式。该表显示了一家公司的部门是否实现了电话和电子邮件的目标 问题是,当我隐藏列时(使用R Can';t隐藏列并将行名设置为FALSE,r,shiny,dt,R,Shiny,Dt,我在Shiny中创建了一个数据表,它使用DT根据一组隐藏列中的值设置值的样式。该表显示了一家公司的部门是否实现了电话和电子邮件的目标 问题是,当我隐藏列时(使用columnDefs=list(list(targets=c(4,5),visible=FALSE)),我不能再在datatable()调用下使用rownames=FALSE:表显示时没有数据。有人知道我如何让这两个选项一起工作吗 我使用了以下文章: 库(闪亮) 图书馆(tidyverse) 图书馆(DT) x由于行名也是一列,当您将
columnDefs=list(list(targets=c(4,5),visible=FALSE))
,我不能再在datatable()
调用下使用rownames=FALSE
:表显示时没有数据。有人知道我如何让这两个选项一起工作吗
我使用了以下文章:
库(闪亮)
图书馆(tidyverse)
图书馆(DT)
x由于行名也是一列,当您将它们设置为false时,您需要对要隐藏的列重新编制索引。因此,在您的特定情况下,第5列不再存在。现在它是数字4,第4个是第3个,因此您的代码应该如下所示:
server <- function(input, output) {
output$table <- DT::renderDataTable({
# Can't use both visible = FALSE and rownames = FALSE
datatable(x, rownames=F,
options = list(
columnDefs = list(list(targets = c(3, 4), visible = FALSE) # THIS
)
)) %>% # OR THIS
formatStyle(
columns = c('Calls', 'Emails'),
valueColumns = c('Calls_goal', 'Emails_goal'),
color = styleEqual(c(1, 0), c("red", "black"))
)
})
}
server这就是您希望输出的样子:[1]:我想删除最左边的索引号。@JonnyCrunch的答案解决了这个问题-谢谢!
server <- function(input, output) {
output$table <- DT::renderDataTable({
# Can't use both visible = FALSE and rownames = FALSE
datatable(x, rownames=F,
options = list(
columnDefs = list(list(targets = c(3, 4), visible = FALSE) # THIS
)
)) %>% # OR THIS
formatStyle(
columns = c('Calls', 'Emails'),
valueColumns = c('Calls_goal', 'Emails_goal'),
color = styleEqual(c(1, 0), c("red", "black"))
)
})
}