4

私が解決しようとしている実際の問題:データ テーブルを含むダッシュボードを作成しています。桁区切り記号としてコンマを使用して数字をフォーマットしたいのですが、(どうやら) DT パッケージを Shiny で使用すると、コンマ区切りのフォーマットにより DT::renderDataTable が数字を文字として読み取るという問題があります。 、これは数値の並べ替え方法に影響します。(DT の数値書式設定機能は、Shiny では機能しないようです。)

これまでのところ:私が見つけた唯一の解決策は、DT の代わりに googleVis を使用してテーブルを作成することです。現在、別の問題 (以下で説明) に直面していますが、私が本当に気にかけているのは、数値のように並べ替えられるコンマ区切りの数値を含むデータ テーブルを用意することです。

GoogleVis の問題: Shiny アプリの外部で gvisTable を使用すると、完全に正常にレンダリングされますが、Shiny で renderGvis と htmlOutput を使用するとまったくレンダリングされません。例として、ここから例 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())
    }) 
  }
)

どんな助けでも大歓迎です!

4

1 に答える 1

4

私は自分の問題を解決しました。RStudio のネイティブ ブラウザでは、Shiny を介して googleVis の展示物を表示するのが難しいことがわかりました。私がする必要があったのは、それを Firefox で開くことだけでした。これまでに、これほど「ウー」と「ウー」を同時に感じたことはなかったと思います。

于 2015-07-13T21:09:24.243 に答える