Я создаю панель Shiny для отображения таблицы данных.
Моя цель - автоматически настроить ширину столбца таблицы данных, чтобы она соответствовала значениям ячеек в 1 строку вместо нескольких строк.Тем не менее, я получил следующий результат:
Кажется, что Имя было скорректировано как то, что я хочу, но Примечания не сделал.Затем я перешел по этим ссылкам: https://rstudio.github.io/DT/options.html,
Настройка ширины столбца в R Shiny DataTable не работает в случае большого количества столбцов ,
R Блестящий набор ширины столбца DataTable
В основном, решения, предлагаемые онлайн, заключались в использовании аргумента autoWidth = TRUE
с columnDefs
при рендеринге таблицы данных.
Это не сработалониже приведен результат:
Кажется, что ширина таблицы была сужена по сравнению с первоначальным результатом
Ниже мой окончательный код:
header <- dashboardHeader(
title = "Test"
)
sidebar <- dashboardSidebar(
)
body <- dashboardBody(
box(title = "Test", width = 7, status = "warning", DT::dataTableOutput("df"))
)
# UI
ui <- dashboardPage(header, sidebar, body)
# Server
server <- function(input, output, session) {
output$df = DT::renderDataTable(df, options = list(
autoWidth = TRUE,
columnDefs = list(list(width = '10px', targets = c(1,3)))))
}
# Shiny dashboard
shiny::shinyApp(ui, server)
Я не уверен, почему ширина столбца Имя может быть скорректирована с длиной значения ячейки, но ширина Примечания не могу.Я также пытался использовать таблицу данных в других проектах, ширина столбцов может быть отрегулирована только с длиной имя столбца .
Другой вариант в моем случае - установить для ширины столбца значениебыть только определенным количеством символов и иметь полный контекст значений ячеек, появляющихся при наведении курсора на ячейку.Решение было предложено здесь: R Shiny Dashboard DataTable Ширина столбца .Тем не менее, это только для DT, но это не сработало, когда я интегрировал его в Shiny.
Заранее спасибо.