在 R Shiny 中格式化数据 table
formatting data table in RShiny
对于我的数据 table 我有以下 ui.R
文件:
tabItem(tabName = "maForwardVsSpot", fluidRow(DT::dataTableOutput(outputId = "maForwardVsSpotTABLE"))
我的 server.R
看起来像这样:
output$maForwardVsSpotTABLE <- DT::renderDataTable({
DT::datatable(dt.FvsS, rownames = FALSE, escape = FALSE, class = 'cell-border stripe',
colnames = c("Date", "Spot", input$maStrategy, "Mean Difference"),
options = list(pageLength = 10, autoWidth = TRUE, scrollX = TRUE,
columnDefs = list(list(className = 'dt-center', targets = c(0,1,2,3), width = '200px')),
initComplete = JS("function(settings, json) {",
"$(this.api().table().header()).css({'background-color': '#007d3c', 'color': '#fff'});",
"}")
)
)
})
这导致以下数据table,其中红色圈出的部分不适合我,因为它们应该与数据table齐平并且离它不远左和右。
这似乎有效:
tabItem(
tabName = "maForwardVsSpot",
tags$div(
style = "width: fit-content;",
DT::dataTableOutput(outputId = "maForwardVsSpotTABLE")
)
)
对于我的数据 table 我有以下 ui.R
文件:
tabItem(tabName = "maForwardVsSpot", fluidRow(DT::dataTableOutput(outputId = "maForwardVsSpotTABLE"))
我的 server.R
看起来像这样:
output$maForwardVsSpotTABLE <- DT::renderDataTable({
DT::datatable(dt.FvsS, rownames = FALSE, escape = FALSE, class = 'cell-border stripe',
colnames = c("Date", "Spot", input$maStrategy, "Mean Difference"),
options = list(pageLength = 10, autoWidth = TRUE, scrollX = TRUE,
columnDefs = list(list(className = 'dt-center', targets = c(0,1,2,3), width = '200px')),
initComplete = JS("function(settings, json) {",
"$(this.api().table().header()).css({'background-color': '#007d3c', 'color': '#fff'});",
"}")
)
)
})
这导致以下数据table,其中红色圈出的部分不适合我,因为它们应该与数据table齐平并且离它不远左和右。
这似乎有效:
tabItem(
tabName = "maForwardVsSpot",
tags$div(
style = "width: fit-content;",
DT::dataTableOutput(outputId = "maForwardVsSpotTABLE")
)
)