2016-04-02 62 views
3

您好我想創建一個閃亮的用戶界面,用戶可以在數據集的名稱中鍵入一個文本框稱爲「testdataset」。然後通過單擊並選擇操作按鈕以在此(示例)分析1或分析2中選擇特定過程。一旦發生這種情況,我希望文本框顯示原始數據集名稱以及所選分析,即「testdataset-analysis1」。我已經在下面構建了一個示例UI,但是Im對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...來設置輸出。有幾種updateInput方法可以在官方Shiny參考中找到。 http://shiny.rstudio.com/reference/shiny/latest/

例如,在您的服務器代碼

function(session, input, output) { 
    observeEvent(input$Ana1, { 
     name <- paste(input$data1, "analysis 1") 
     updateTextInput(session, "data1", value=name) 
    } 
}