2015-10-30 47 views
3

我有一些句子存儲在dataframe列的行中,我希望逐行打印出閃亮的行。在單獨的行上使用textOutput()在Shiny中打印句子

問題是,使用textOutput()將句子打印出來將所有句子連接在一起形成單個字符串。

我已經嘗試使用verbatimTextOutput,雖然這會打印出帶換行符的句子,但輸出格式對於較大的句子可能是凌亂的。另外,我想避免伴隨verbatimTextOutput的灰色背景。

任何人都可以幫助我弄清楚如何在打印之前在句子之間添加換行符?

下面是一個可再現的例子:

shinyUI(

     textOutput("text") 

     ) 

shinyServer(function(input, output){ 


     list <- c("blah blah blah", "drivel drivel drivel", 
        "blah blah blah") 

     text.data <- as.data.frame(list) 

     colnames(text.data) <- " " 

     output$text <- renderPrint({ 
       text.data 

     }) 

}) 

由上述所產生的結果是:

1 blah blah blah 2 drivel drivel drivel 3 blah blah blah 

然而,這是結果我後:

1 blah blah blah 
2 drivel drivel drivel 
3 blah blah blah 

回答

2

我認爲如果您在閃亮的UI部分使用uiOutput並且renderTable在服務器部分,因爲您嘗試輸出data.frame而不是真正的文本。它會給你你需要的東西:

ui <- shinyUI(

    uiOutput("text") 

) 

server <- shinyServer(function(input, output){ 


    list <- c("blah blah blah", "drivel drivel drivel", 
      "blah blah blah") 

    text.data <- as.data.frame(list) 

    colnames(text.data) <- " " 

    output$text <- renderTable({ 

    print(text.data) 

    }) 

}) 

runApp(list(ui=ui, server=server)) 

輸出:

enter image description here

+0

真棒,這正是我在後 - 感謝您的幫助! – dts86

+0

非常歡迎。很高興我可以幫忙:) – LyzandeR