2015-10-26 43 views
0

我第一次創建R Markdown文檔,我想在一個文檔中呈現Markdown文本以及閃亮的組件,但我不知道如何交換對象減價和閃亮 - 任何幫助?R降價和對象的閃亮交換

--- 
runtime: shiny 
output: html_document 
--- 
```{r echo=FALSE} 
subjects<-c(letters[1:20]) 
inputPanel(selectInput("subject_of_interest","",subjects)) 
selected_subject<-input$subject_of_interest # This is failing with error "Operation not allowed without an active reactive context. (You tried to do something that can only be done from inside a reactive expression or observer.)" 
``` 
The selected subject `r selected_subject` is..... 

我需要根據所選主題生成其他文本項目。有沒有辦法做到這一點?

回答

1

以下將開始您以後的工作。

當你有一個selectInput你會想要一些東西是reactive即對用戶輸入作出反應。因此,您需要創建一個reactive function,它會將您之後的文字吐出。這將成爲你開始的基礎。


title: "Untitled" 
runtime: shiny 
output: html_document 
--- 

```{r, echo=FALSE} 
subjects <- c(letters[1:20]) 
inputPanel(
inputPanel(selectInput("subject","Select Subject",subjects,"a")) 
) 
subject <- reactive({ 
    paste0(
    "The selected subject ", 
    input$subject) 
}) 
output$text <- renderText({ 
      subject() 
    }) 
mainPanel(
     textOutput("text") 
    ) 
``` 

聯編輯

按照要求,道歉,如果你想在線:

--- 
title: "Untitled" 
runtime: shiny 
output: html_document 
--- 

```{r, echo=FALSE} 
subjects <- c(letters[1:20]) 
inputPanel(
inputPanel(selectInput("subject","Select Subject",subjects,"a")) 
) 
subject <- reactive({ 
    input$subject 
}) 
output$text <- renderText({ 
      subject() 
    }) 

``` 
the selected subject `r textOutput("text")` 
+0

我有使用其他降價的特徵,產生大量的文字,你在說什麼是否必須使用所有Shiny輸出對象來生成文本?有沒有辦法將選定的下拉值分配給可在降價文本中訪問的對象? – Sri

+0

完美 - 謝謝! – Sri

+0

問題:如何使用'textOutput(「text」)值來對數據表進行子集化? datatable [字符== textOutput(「文本」),]不工作 - 任何幫助? – Sri