选项卡面板的动态高度调整不适用于信息框

Posted

技术标签:

【中文标题】选项卡面板的动态高度调整不适用于信息框【英文标题】:Dynamic height adjustment of tabpanel does not work with infobox 【发布时间】:2022-01-01 02:57:18 【问题描述】:

我正在创建一个闪亮的仪表板,并希望在选项卡面板中使用信息框。但是面板的高度不会动态调整到信息框的高度。如果我将图表集成到面板中,它会自动调整。

我的代码如下所示:

library("shiny")
library("shinydashboard")
library("shinydashboardPlus")

ui <- dashboardPage(
    header =     dashboardHeader()
    ,sidebar = dashboardSidebar()
    ,body = dashboardBody(
        
        tabBox(
            tabPanel(
                title = "Tab1"
                ,infoBoxOutput(outputId = "ibo")
            )
            ,tabPanel(
                title = "Tab2"
                ,plotOutput(outputId = "po")
            )
            ,width = 12
        )
        
    )
)

server <- function(input, output) 
    
    output$ibo <- renderInfoBox(
        infoBox(
            title = "Infobox"
            ,value = 42
        )
    )
    
    output$po <- renderPlot(
        plot(mtcars$mpg, mtcars$cyl)
    )
    


shinyApp(ui = ui, server = server)

如何将标签面板的高度调整为信息框的高度?

【问题讨论】:

【参考方案1】:

非常简单,将infoBoxOutput 包裹在fluidRow 中:

library("shiny")
library("shinydashboard")
library("shinydashboardPlus")

ui <- dashboardPage(
    header =     dashboardHeader()
    ,sidebar = dashboardSidebar()
    ,body = dashboardBody(
        
        tabBox(
            tabPanel(
                title = "Tab1",
                fluidRow(
                    infoBoxOutput(outputId = "ibo")
                )
            )
            ,tabPanel(
                title = "Tab2"
                ,plotOutput(outputId = "po")
            )
            ,width = 12
        )
        
    )
)

server <- function(input, output) 
    
    output$ibo <- renderInfoBox(
        infoBox(
            title = "Infobox"
            ,value = 42
        )
    )
    
    output$po <- renderPlot(
        plot(mtcars$mpg, mtcars$cyl)
    )
    


shinyApp(ui = ui, server = server)

【讨论】:

以上是关于选项卡面板的动态高度调整不适用于信息框的主要内容,如果未能解决你的问题,请参考以下文章

在 Rmarkdown 中动态创建选项卡不适用于 ggplot,而它适用于 plotly

由纯 CSS 中最大面板内容大小的选项卡框

AxureRP分页签 / Tab选项卡切换功能~

在带有选项卡式控件的表单中,单击按钮会降低焦点选项卡页中的面板高度,如果移动到另一个选项卡并返回,则会更正

从选项卡注销,不适用于所有其他选项卡

引导选项卡不适用于 history.back 选项