如何在renderTable(Shiny)的行名中添加下标?

时间:2017-10-12 16:14:25

标签: r shiny

如何在 num #instances #bytes class name ---------------------------------------------- 1: 1105141 97252408 java.lang.reflect.Method 2: 3603562 86485488 java.lang.Double 3: 1191098 28586352 java.lang.String 4: 191694 27035744 [C 的行名称中添加下标?在以下示例中,我需要renderTableA_1中的下标。

A_2

1 个答案:

答案 0 :(得分:2)

您可以使用DT数据包作为数据表。您需要使用escape = FALSE的html标记。看看下面修改过的代码:

  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)

你得到一张如下表:

enter image description here

修改

您可以使用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)

输出表如下所示: enter image description here

希望它有所帮助!