Подтвердить что ты не робот

Изменение цвета и шрифта текста в приложении Shiny

Я использую код ниже в server.R для отображения текста на главной панели. Это работает точно так, как должно работать.

output$text1 <- renderText({
  if(input$ag == 0) return(NULL)
  return('First 20 rows for requested AG')
})

Есть ли способ изменить шрифт и цвет текста?

4b9b3361

Ответ 1

Вы можете использовать css, как указано @jbaums

library(shiny)
runApp(list(
  ui = bootstrapPage(
    numericInput('n', 'Number of obs', 100),
    textOutput('text1'),
    tags$head(tags$style("#text1{color: red;
                                 font-size: 20px;
                                 font-style: italic;
                                 }"
                         )
              )
  ),
  server = function(input, output) {
    output$text1 <- renderText({ paste("hello input is",input$n) })
  }
))

Обычно вы должны включать это в файл styles.css, но он показан внутри, чтобы быть самодостаточным. #text1 относится к элементу DOM с id=text1, а содержимое фигурных скобок - соответствующие стили.

Ответ 2

Если требуется изменить только часть возвращаемой строки, можно использовать htmlOutput вместо textOutput

На стороне сервера просто верните

output$text1 <- renderText({ paste("hello input is","<font color=\"#FF0000\"><b>", input$n, "</b></font>") })

Таким образом, Shiny UI будет выполнять HTML.

Ответ 3

в ui.r:

span(textOuput("message"), style="color:red")

в server.r:

output$message <- renderText({"This is some red text"})