首页 文章

与css闪亮的进度栏

提问于
浏览
1

在下面的脚本中,我尝试使用CSS更改默认的Shiny进度条:

server <- function(input, output) {
  output$plot <- renderPlot({
    input$goPlot

    dat <- data.frame(x = numeric(0), y = numeric(0))

    withProgress(message = 'Making plot', value = 0, {
      n <- 10

      for (i in 1:n) {
        dat <- rbind(dat, data.frame(x = rnorm(1), y = rnorm(1)))
        incProgress(1/n, detail = paste("Doing part", i))
        Sys.sleep(0.1)
      }
    })

    plot(dat$x, dat$y)
  })
}

ui <- shinyUI(basicPage(
   tags$style(type = 'text/css', '.shiny-progress .progress-text { color: #020202; font-size: 30px; background-color: #FF0000; }'),

   plotOutput('plot', width = "300px", height = "300px"),
   actionButton('goPlot', 'Go plot')
))

shinyApp(ui = ui, server = server)

我试着用这一行改变颜色,字体大小和背景颜色:

tags$style(type = 'text/css', '.shiny-progress .progress-text { color: #020202; font-size: 30px; background-color: #FF0000; }'),

正好遵循Winston Chang的建议:https://groups.google.com/forum/#!topic/shiny-discuss/aFJTOLhld3U和咨询:https://github.com/rstudio/shiny/blob/515a67a/inst/www/shared/shiny.css#L94-L114

但无论我尝试什么,都没有改变进度条 . 有谁有想法吗?例如 . 我使用正确的css选择器来“连接”闪亮的进度条吗?

1 回答

  • 1

    如果要使用自定义css,则必须设置选项 style="old"

    withProgress(message = 'Making plot', value = 0, {
      n <- 10
      for (i in 1:n) {
        dat <- rbind(dat, data.frame(x = rnorm(1), y = rnorm(1)))
        incProgress(1/n, detail = paste("Doing part", i))
        Sys.sleep(0.1)
      }
    }, style="old")
    

相关问题