2014-10-14 15 views
15

W lśniące, mam następujący:jak wstawić nowy wiersz w R błyszczące ciąg

output$sequenceText <- renderText({ 
    showSequence() 
    }) 

showSequence <- reactive({ 
    selectedSeqs <- as.numeric(input$sequenceSelect) 
    resultString <- "" 
    currentString <-"" 

    for(i in selectedSeqs){ 
    currentString <- paste(i, toString(myProts[i]), sep = ":") 
    resultString <- paste(resultString, currentString, sep = "\n") 
    } 
    return(resultString) 

}) 

Jednak nie wydaje się, że nowy znak linii jest przestrzegane. Jak to naprawić?

Dzięki!

+0

Możliwe duplikat [Wyprowadzanie wiele linii tekstu z renderText (R) w błyszczące] (https://stackoverflow.com/questions/23233497/outputting-multiple-lines-of-text-with-rendertext-in-r-shiny) –

Odpowiedz

25

Według mojej wiedzy, istnieją tylko dwie opcje wyświetlania wielu linii w błyszczącym kolorze. Jednym ze sposobów korzystania z verbatimTextOutput, który zapewni szare pole wokół tekstu (osobiste preferencje). Drugim jest użycie renderUI i htmlOutput do używania surowego html. Oto podstawowy przykład działania, aby zademonstrować wyniki.

require(shiny) 
runApp(
    list(
    ui = pageWithSidebar(
     headerPanel("multi-line test"), 
     sidebarPanel(
     p("Demo Page.") 
    ), 
     mainPanel(
     verbatimTextOutput("text"), 
     htmlOutput("text2") 
    ) 
    ), 
    server = function(input, output){ 

     output$text <- renderText({ 
     paste("hello", "world", sep="\n") 
     }) 

     output$text2 <- renderUI({ 
     HTML(paste("hello", "world", sep="<br/>")) 
     }) 

    } 
) 
) 

Daje to następujące figury:

enter image description here

+0

Niesamowite, właśnie to, czego potrzebowałem. – user1357015

Powiązane problemy