2016-01-03 65 views
3

我在我的Shiny应用程序中有一个数据表。默认情况下,列名称是数据集的列名称。 我想更改显示的列名,而不触及数据集本身。重命名闪亮的仪表板数据表中的列

我发现this文档正是我所需要的,但我不知道如何将其转换为R语法。

这是当前的方式我渲染表:我已经试过加入columnDefs选择在几个方面,但没有奏效

output$score_data_table <- renderDataTable({ 
    selectedArea_overview_TC()}, 
    options = list(orderClasses = TRUE, 
        lengthMenu = list(c(15,25,50,100,-1), c('15','25','50','100','All')), 
        pageLength = 15, 
        order=list(1, 'desc')) 
) 

任何提示将不胜感激!

+0

在'?renderDataTable'中有一个传递给'datatable()'的'...'参数。在'?datatable'文档中,您可以找到您可能需要检查的'rownames'和'colnames'参数。 – nicola

+1

将其分配给新的数据框并更改列名称有什么问题?这不是什么方法可以做到这一点? –

回答

1

您可以在renderDataTable中使用colnames。例如:

output$table1 <- DT::renderDataTable({ 
    datatable(messages(), 
    colnames = c('Type', 'Message', 'Check', 'Entity', 'ID','File'), 
    options = list(pageLength = 50, autoWidth = TRUE, 
    columnDefs = list(list(width = '800px', targets = c(2)))),filter='top')}) 
0

我陷入了同一陷阱。您实际需要的文档是columns.title

output$score_data_table <- renderDataTable({ 
    selectedArea_overview_TC() 
    }, 
    options = list(orderClasses = TRUE, 
       lengthMenu = list(c(15,25,50,100,-1), c('15','25','50','100','All')), 
       pageLength = 15, 
       order=list(1, 'desc') 
       columns = list(
        list(title = 'newnameforcol1'), 
        NULL, # skip column 2 
        list(title = 'newnameforcol3'), 
       ) 
) 
) 

标题也可以与columnDefs一起使用。我不确定。

相关问题