考虑以下非常简单的闪亮应用程序,它输出存储在数据框df
中的文本表:
library(shiny)
df <- data.frame(id=1:3,
text=c('It was a good day today', 'It is good to hear from you', 'I am feeling good'),
stringsAsFactors = FALSE)
ui <- fluidPage(
tableOutput("freetext")
)
server <- function(input, output){
output$freetext <- renderTable({ df })
}
shinyApp(ui=ui, server=server)
我希望每行中的“好”一词显示为红色。这可能使用tableOutput
吗?
我看过像this one这样的帖子建议用textOutput
函数中的htmlOutput
替换ui
,但我不知道如何将其扩展到文本表。
如果您使用htmlTable
,则可以在表格中包含一些HTML。例如:
library(shiny)
library(htmlTable)
df <- data.frame(
id=1:3,
text=c('It was a <span style="color:red;">good</span> day today',
'It is good to hear from you',
'I am feeling good'),
stringsAsFactors = FALSE)
ui <- fluidPage(
htmlTableWidgetOutput("freetext")
)
server <- function(input, output){
output$freetext <- renderHtmlTableWidget({
htmlTableWidget(df)
})
}
shinyApp(ui=ui, server=server)