繁体   English   中英

如何在R中的shinydashboard中突出显示一个单词?

[英]How to highlight a word in shinydashboard in R?

我找到了一些关于如何在其他上下文中突出显示单词的建议,但这些建议对我的问题不起作用。 这是我的代码:


data<-data.frame(X=c("This is an example", "This is not"))
wordlist<-c("This","example","not")

ui <- dashboardPage(
  dashboardHeader(),
  dashboardSidebar(sidebarMenu(selectInput("stemmedw", label="Find A Word : ",wordlist))
  ),
  dashboardBody("Title", tabPanel("News",uiOutput("news"))) 
)

server <- function(input, output) {
  output$news <- renderUI({
    pos<-unlist(gregexpr(input$stemmedw,data$X,fixed=TRUE))!=-1
    base<-data.frame(X=data[pos,], stringsAsFactors = FALSE)
    m2 <- data.frame(X=data[pos,], stringsAsFactors = FALSE)
    n<-dim(m2)[1]

    a2 <- list()
    for(i in seq_len(n)) {
      a2[[i]] <- valueBox(i,lapply(m2, "[[", i),  width = 100,color="blue")
    }
    tagList(a2)
  })
}


shinyApp(ui = ui, server = server)

我只想突出显示 valueBox 中文本中的选定单词。 可能是不同的背景颜色、粗体样式和/或下划线。

这是在HTML中使用粗体的一种方法,只需填写您想要的 htmls 标签:

data<-data.frame(X=c("This is an example", "This is not"))
wordlist<-c("This","example","not")

ui <- dashboardPage(
  dashboardHeader(),
  dashboardSidebar(sidebarMenu(selectInput("stemmedw", label="Find A Word : ",wordlist))
  ),
  dashboardBody("Title", tabPanel("News",uiOutput("news"))) 
)

server <- function(input, output) {
  output$news <- renderUI({
    pos<-unlist(gregexpr(input$stemmedw,data$X,fixed=TRUE))!=-1
    base<-data.frame(X=data[pos,], stringsAsFactors = FALSE)
    m2 <- data.frame(X=data[pos,], stringsAsFactors = FALSE)
    n<-dim(m2)[1]

    a2 <- list()

    for(i in seq_len(n)) {
      a2[[i]] <- valueBox(i, HTML(gsub(input$stemmedw, paste0("<b>", input$stemmedw, "</b>"), m2$X[[i]], fixed = TRUE)), width = 100, color = "blue")
    }
    tagList(a2)
  })
}


shinyApp(ui = ui, server = server)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM