考虑以下非常简单的闪亮应用程序,该应用程序输出存储在数据框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
,但是我不确定如何将其扩展到一个文字。
答案 0 :(得分:1)
如果使用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)