Как использовать sjPlot для сообщения таблицы html в R shiny? - PullRequest
3 голосов
/ 09 июля 2020

Почему мой код не запускается успешно? Как мне использовать sjPlot для создания таблицы html в блестящей форме?

library(shiny)
library(sjPlot)

ui <- fluidPage(
    sidebarLayout(
        sidebarPanel(),
        mainPanel(htmlOutput("a"))
    )
)

server <- function(input, output){
  output$a <- renderUI({
    tab_df(iris,title="title",col.header='N',footnote='footnote')
  })
}

# Run the application 
shinyApp(ui = ui, server = server)

Когда я запускаю код, журнал записывается как «Предупреждение: ошибка в if: аргумент имеет нулевую длину». Я не знаю, что не так с кодом.

Спасибо.

1 Ответ

1 голос
/ 09 июля 2020

Проблема в том, что tab_df, кажется, записывает свой HTML в файл, а не возвращает HTML, который вы хотите использовать. Глядя на sjPlot:::print.sjTable, кажется, что мы можем обойти это с помощью

server <- function(input, output){
  output$a <- renderUI({
    HTML(tab_df(iris,title="title",col.header='N',footnote='footnote')$knitr)
  })
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...