如何更改sliderInput值的大小闪亮仪表板

时间:2020-09-16 00:54:43

标签: r shiny shinydashboard

我意识到有很多关于如何更改sliderdashboard的sliderInput文本大小的问题/答案,但是我仍然遇到问题。我的输出看起来像这样:

enter image description here

滑块上的x轴值太小。呈现sliderInput的代码为:

    # Data description
    observeEvent(input$btnDescr, {
            output$descr_daterange <- renderUI({
                    sliderInput(inputId='descr_daterange',
                                label='Select Time Period',
                                min = as.Date(min(inputData$qcdata$LDT)),
                                max = as.Date(max(inputData$qcdata$LDT)),
                                value = c(as.Date(min(inputData$qcdata$LDT)),as.Date(max(inputData$qcdata$LDT))
                                )
                    )
            })
    }),

,应用程序的ui <-...部分中的相应代码为

uiOutput("descr_daterange')

更改x轴文本的大小需要什么代码,它在哪里?我尝试了很多事情,没有运气。我认为它涉及到此代码,但是我仍然把错误的地方或其他内容放在了那儿。

tags$style(type='HTML', ".irs-grid-text { font-size: 10pt; }")

1 个答案:

答案 0 :(得分:3)

如果您只想更改从renderUI返回的一个sliderInput的文本大小,则可以将滑块包装在div中,为其指定唯一的ID,然后将CSS样式仅应用于该输入。您应该能够在UI或renderUI中放置标签$ style,但是这是一个非常简单的示例,其中将renderUI的样式保持在一起。我们将需要使用tagList()从renderUI中的服务器返回多个UI元素。

library(shiny)

ui <- fluidPage(
uiOutput('ui_norm'),
uiOutput('ui_big')
)

server <- function(input, output, session) {
  output$ui_norm <- renderUI({
      sliderInput('in1', 'Slider', min = 1, max = 10, value = 5)
  })
  
  output$ui_big <- renderUI({
  tagList(
    tags$style(type = 'text/css', '#big_slider .irs-grid-text {font-size: 20px}'), 
    div(id = 'big_slider',
      sliderInput('in2', 'Slider', min = 1, max = 10, value = 5)
       )#div close
      )#taglst close
  })
}

shinyApp(ui, server)

请注意,tags $ style中的#用来选择id = big_slider的元素,这是我们的div。

enter image description here