动态显示图标的一部分

时间:2019-09-27 23:54:03

标签: r shiny font-awesome shinydashboard

我感兴趣的是动态创建一个图形,该图形由一个闪亮的应用程序中彼此相邻的多个图标组成。在一种情况下,我有一个由滑块输入控制的值,并且我想通过将几个Font Awesome图标彼此相邻显示来可视化该值,这些图标对应于给定值相对于最大允许值的百分比。

我目前能够动态产生一个UI输出,该输出使用滑块提供的值,看起来大致像这样。
enter image description here 但是,此代码只是将图标的数量四舍五入到最接近的整数。

library(shiny)
library(shinydashboard)

ui <- dashboardPage(
  dashboardHeader(),
  dashboardSidebar(),
  dashboardBody(
    sliderInput(
      inputId = "slider",
      label = NULL,
      min = 0,
      max = 100,
      value = 50
    ),
    uiOutput("userGraphic")
  )
)

server <- function(input, output) { 

  observeEvent(input$slider, {
    num_people <- round((input$slider/100.0)*10)
    output$userGraphic <- renderUI({
      lapply(1:num_people, function(i) {
        column(width=1,icon('user-o'))
      })
    })  

  }
  )

}

shinyApp(ui, server)

是否有人考虑过如何避免舍入,而是显示一定比例的图标(例如,如果滑块为75%的全屏显示7.5个图标)。

0 个答案:

没有答案