【问题标题】:objects allocation in ShinyShiny中的对象分配
【发布时间】:2017-04-23 12:46:39
【问题描述】:

我正在尝试制作一个包含 3 个主题的仪表板。因此,我制作了 3 个框,但我想要实现的是主页中的 3 个框,它们将覆盖页面的整个宽度,但它们非常窄。 根据我的理解,页面的整个宽度是 12 个单位,所以我做了这样的代码:

library(shiny)
library(shinydashboard)

sidebar <- dashboardSidebar(
  sidebarMenu(
    menuItem("Dashboard", tabName = "main", icon = icon("dashboard")),
    menuItem("Widgets", icon = icon("th"), tabName = "widgets")
  )
)

body <- dashboardBody(
  tabItems(
    tabItem(tabName = "main",
            tags$head(
              tags$style(HTML("
                              h2,h4{
                              text-align: center;
                              }
                              "
              ))
              ),
            h2("Title"),
            h4("Dashboard"),
            fluidRow(
              column(4,
                     box(title="Advance Analysis Tools", hr(),
                         tags$ul( tags$li("Object"), tags$li("Object"), tags$li("Object"), tags$li("Object") ))),
              column(4,
                     box(title="Quality",hr(),
                         tags$ul( tags$li("Object"),tags$li("Object")) )),
              column(4,
                     box(title="Operation",hr(),
                         tags$ul( tags$li("Object"),tags$li("Object"),tags$li("Object"),tags$li("Object"), tags$li("Object"), tags$li("Object") )))
            )
              )

              )
            )

ui <- dashboardPage(
  dashboardHeader(title = "Dashboard"),
  sidebar,
  body
)

server <- function(input, output) {

}

shinyApp(ui, server)

但是 3 个盒子没有正确展开。

请指教。

提前致谢,

迈克尔

【问题讨论】:

  • 你的body &lt;- dashboardBody()函数抛出错误Error in lapply(list(...), tagAssert, class = "tab-pane") : argument is missing, with no default我猜你的本地版本不是这样?
  • 是的,很抱歉,我更新了代码,现在可以使用了。
  • 没问题,感谢您为简化版本所做的努力:)

标签: r shiny shinydashboard


【解决方案1】:

box() 函数也有一个宽度参数,就像您在 column() 函数中使用它一样。 您可能已经知道 12 是该参数的最大值。 请注意,框的宽度与列宽有关。宽度参数为 4 的列包括宽度参数为 12 的框会导致列被框完全填充且宽度为 4。

所以你可以使用类似的东西。

 column(4, 
   box(title="Operation",hr(), width = 12, ...

如果你想去掉中间的空格,可以使用 sthg,比如: offset = 0, style='padding:0px;' 看这里:shiny fluidrow column white space

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-20
    • 1970-01-01
    • 2021-01-15
    • 2014-08-24
    • 2020-07-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多