2016-08-04 7 views
0

私はrenderDatatableコマンド内の反応性の高いデータから棒グラフを作成する必要があります。そのためには、そのテーブルをdata.frame形式で作成する必要があります。これは可能ですか? これまでのところ、私が試してみました:renderDatatableコマンドを使用した後、そのテーブルを独自のデータフレームに変換できますか?

tableAB <- reactive({tableA}) 
    mydata <- data.frame(tableAB) 

私はエラー

"data.frameに" "反応性 "" クラスを強制することはできません"

にこの内の任意の洞察力になるだろう大変感謝しています!

答えて

0

データテーブルに表示するデータをデータフレームに配置しようとしましたか?作成したデータフレームをデータテーブルにレンダリングするデータとして使用します。ユーザインタフェースを介してデータテーブルをフィルタリングした後、 "input $ tableId_rows_all"を使用して行インデックスを取得し、それらのインデックスを使用してプロットする前にデータフレームをフィルタリングすることができます。

役立ちますか?

これは、あなたがプロットするためのデータフレームをフィルタリングするためにデータテーブルを使用する方法の例です:

# ui.R #   
    library(shiny) 
    library(DT) 


    fluidPage(
      title = 'DataTables Information', 
      h1('A client-side table'), 
      fluidRow(
          DT::dataTableOutput('irisTable') 
          ), 
      fluidRow(
        plotOutput("irisPlot") 
      ) 
    ) 

library(shiny) 
library(DT) 



shinyServer(function(input, output, session) { 


    # render the table (with row names) 
    output$irisTable = DT::renderDataTable(iris, 
    server = FALSE, caption = "Column sum example", 
            filter = "top") 
    output$irisPlot <- renderPlot({ 
      gg <- ggplot(iris[input$irisTable_rows_all, ], 
      aes(x = Sepal.Length, y = Petal.Length)) 
      gg <- gg + geom_point() 
      print(gg) 
    }) 

})

+0

は「renderdataframe」コマンドがありますか? – eteuler

+0

私は何とかあなたがデータテーブルを埋めるために使用するデータがデータフレームから来ていないと仮定し、それがデータフレームをデータフレームにダンプする必要があった理由です。私は、datatableでフィルタリングされたデータフレームをプロットする例で私の答えを編集しました。 –

関連する問題