2016-04-02 3 views
3

こんにちは私は、ユーザーがデータセットの名前を "testdataset"というテキストボックスに入力できる光沢のあるUIを作成します。次に、この(例)分析1または分析2で特定のプロセスを選択し、アクションボタンをクリックします。これが発生すると、元のデータセット名と選択された分析、つまり「testdataset-analysis1」をテキストボックスに表示します。私は以下のUIを構築していますが、Rには新しく、光沢があり、イベントをキャプチャしてUIとサーバー間で変数を渡してレンダリングする方法はわかりません。誰も助けることができますか? example of what i would like to achieve
ライブラリ(光沢)光沢のある方法入力テキストフィールドをアクションボタンの値で更新するにはどうすればいいですか?

#====shiny UI 
    shinyUI(pageWithSidebar(
    headerPanel("Shiny action button input "), 
    sidebarPanel(
     textInput(inputId="data1", label = "Input data name"), 

     actionButton("Ana1", "analysis1"), 
     actionButton("Ana2", "analysis2") 
    ), 
    mainPanel(
    # 
    ) 
)) 

    #====shiny server 
    shinyServer(
    function(input, output) { 
     output$data1 <- renderText({input$data1}) 

    }) 
    } 
) 

    runApp()#to run application 

答えて

1

これは完全な答えはありませんが、それは自分のためにしようとするのが良いです。一般に、updateTextInputを使用してテキストを更新し、observeEventを使用してボタンのクリックアクションを観察し、input$nameを使用して入力値をキャッチし、output$name <- render...を使用して出力を設定します。公式のシャイニーの参考文献にはいくつかの方法があります。updateInputhttp://shiny.rstudio.com/reference/shiny/latest/

たとえば、サーバーのコードで

function(session, input, output) { 
    observeEvent(input$Ana1, { 
     name <- paste(input$data1, "analysis 1") 
     updateTextInput(session, "data1", value=name) 
    } 
} 
関連する問題