2016-05-31 5 views
0

매우 간단한 반짝이 응용 프로그램이 있습니다. 사용자가 어구를 입력하면 앱이 마지막 단어를 추출하여 인쇄합니다.텍스트 형식 변경 Shiny에서 출력 출력

require(shiny) 
require(stringi)   
require(stringr)  

server <- function(input, output) { 
     tokens <- reactive({ 
       token <- tolower(input$sentence) 
       token <- gsub("[^[:alnum:]['-]", " ", token) 
       token <- gsub("^\\s+|\\s+$", "", token) 
     }) 

     output$lastOne <- renderPrint({ 
       word(tokens(), -1) 
     }) 


} 

ui <- navbarPage("Filter", 
       tabPanel("The App", 
          column(8, offset = 4, 
           textInput(inputId = "sentence", label = "Enter your phrase"), 
           submitButton("Filter") 
         ), 

          fluidRow(
            textOutput('lastOne') 
         ) 
       ), 

       tabPanel("How to use") 
) 


shinyApp(ui = ui, server = server) 

는 어떻게 textOutput의 형식을 변경할 수 있습니다 ? 예를 들어, 버튼처럼 보입니다.

+0

'renderUI'를 사용하면 textInput 값으로 동적으로 버튼을 만들 수 있습니다. 또는 CSS를 사용하여 텍스트를 버튼처럼 보이게 할 수 있습니다 (http://stackoverflow.com/questions/26189587/how-to-make-a-text-or-html-tag-look-like-a- 버튼) –

+0

귀하의 해결책을 이해하지 못하거나 자신을 모호하게 표현했습니다. 현재'textOutput'은 일반 텍스트로 표시됩니다. 그러나이 텍스트를 마치 단추 인 것처럼 다른 형식으로 표시하고 싶습니다. 아니면 어떤 색깔의 배경이나 뭐든간에. – feder80

+0

예 –

답변

0

다음은 renderUI을 사용한 예입니다. 또한 색 배경 만 원하는 경우 CSS를 사용해 볼 수도 있습니다. CSS는 버튼처럼 보일 수도 있지만 조금 까다 롭습니다.

require(shiny) 
require(stringi)   
require(stringr)  

server <- function(input, output) { 
    tokens <- reactive({ 
     token <- tolower(input$sentence) 
     token <- gsub("[^[:alnum:]['-]", " ", token) 
     token <- gsub("^\\s+|\\s+$", "", token) 
    }) 

    output$lastOne <- renderUI({ 
     tags$button(word(tokens(), -1)) 
    }) 

} 

ui <- navbarPage("Filter", 
       tabPanel("The App", 
          column(8, offset = 4, 
           textInput(inputId = "sentence", label = "Enter your phrase"), 
           submitButton("Filter") 
         ), 

          fluidRow(
           uiOutput("lastOne") 
         ) 
       ), 
       tabPanel("How to use") 
) 


shinyApp(ui = ui, server = server) 
+0

을 제공해 드리겠습니다. 고맙습니다. – feder80