gvisTables 不在闪亮的应用程序中呈现

gvisTables not rendering in Shiny apps

我试图解决的实际问题: 我正在创建一个包含数据表的仪表板。我希望用逗号将数字格式化为千位分隔符,但是(显然)DT 包在与 Shiny 一起使用时存在问题,因为逗号分隔的格式导致 DT::renderDataTable 读取数字为字符,它会影响数字的排序方式。 (DT 的数字格式化功能似乎不适用于 Shiny。)

目前我所处的位置: 我能找到的唯一解决方案是使用 googleVis 而不是 DT 来创建表格。现在我 运行 遇到了一个不同的问题(如下所述),但我真正关心的是拥有以逗号分隔的数字的数据表,这些数字像数字一样排序。

GoogleVis 问题: 当我在 Shiny 应用程序之外使用 gvisTable 时,它​​们呈现得非常好,但在 Shiny 中使用 renderGvis 和 htmlOutput 时它们根本不呈现。作为示例,我将从 here.

中借用示例 4

不使用 Shiny,我的代码如下所示:

library(datasets)
library(googleVis)

myOptions <- list(page='enable', pageSize=10, width=550)

Table <- gvisTable(Population,options=myOptions)

plot(Table)

使用Shiny是这样的:

library(datasets)
library(googleVis)
library(shiny)

shinyApp(
  ui = pageWithSidebar(
    headerPanel("Example 4: pageable table"),
    sidebarPanel(
      checkboxInput(inputId = "pageable", label = "Pageable"),
      conditionalPanel("input.pageable==true",
                       numericInput(inputId = "pagesize",
                                    label = "Countries per page",10))
    ),
    mainPanel(
      htmlOutput("myTable")
    )
  ),
  server = function(input,output){
    myOptions <- reactive({
      list(
        page=ifelse(input$pageable==TRUE,'enable','disable'),
        pageSize=input$pagesize,
        width=550
      )
    })
    output$myTable <- renderGvis({
      gvisTable(Population,options=myOptions())
    }) 
  }
)

非常感谢任何帮助!

我解决了我自己的问题。事实证明,RStudio 的原生浏览器很难通过 Shiny 显示 googleVis 的展示。我需要做的就是在 Firefox 中打开它...我认为我以前从未同时感受到这么多 "woot" 和 "ugh"。