Как добавить подписки в имена строк таблицы визуализации (Shiny)?

Как добавить подписки в имена строк renderTable? В следующем примере мне нужны подписки в A_1 а также A_2,

library(shiny)

ui <- fluidPage(tableOutput("table"))

server <- function(input, output) {
  output$table <- renderTable({data <- data.frame(c(1, 2),
                                         row.names = c("A_1", "A_2"))}, rownames = T)}

shinyApp(ui = ui, server = server)

1 ответ

Решение

Ты можешь использовать DT пакет для датированных для этого. Вам нужно использовать HTML-теги с escape = FALSE, Посмотрите на измененный код ниже:

  library(shiny)
  library(DT)
  ui <- fluidPage(dataTableOutput("table"))

  server <- function(input, output) {
    output$table <- renderDataTable({
      data <- datatable(data.frame(c(1, 2), row.names = c("A<sub>1</sub>", "A<sub>2</sub>")), rownames = T, escape = FALSE)
      })
  }

  shinyApp(ui = ui, server = server)

Вы получаете таблицу, которая выглядит так:

РЕДАКТИРОВАТЬ:

Вы можете добавить индекс для renderTable используя HTML-теги с sanitize.text.function = function(x) x, Код будет таким, как показано ниже:

 library(shiny)

    ui <- fluidPage(tableOutput("table"))

    server <- function(input, output) {
      output$table <- renderTable({data <- data.frame(c(1, 2),
                                                      row.names = c("A<sub>1</sub>", "A<sub>1</sub>"))}, rownames = T, sanitize.text.function = function(x) x)}

    shinyApp(ui = ui, server = server)

Выходная таблица будет выглядеть следующим образом:

Надеюсь, поможет!

Другие вопросы по тегам