我有一个闪亮的仪表板,其中一行上有8个盒子。为了使它们适合一排,我需要将宽度设置为1.5(12个宽度)。
当我这样做时,每个盒子占据一整行:
fluidRow(
box(width = 1.5, title = "Sample Flow", background = "black", dygraphOutput("plot5", height = 150)),
box(width = 1.5, title = "Last 24 Hrs", background = "black", dygraphOutput("plot6", height = 150)),
box(width = 1.5, title = "Sample Flow", background = "black", dygraphOutput("plot7", height = 150)),
box(width = 1.5, title = "Last 24 Hrs", background = "black", dygraphOutput("plot8", height = 150)),
box(width = 1.5, title = "Sample Flow", background = "black", dygraphOutput("plot9", height = 150)),
box(width = 1.5, title = "Last 24 Hrs", background = "black", dygraphOutput("plot10", height = 150)),
box(width = 1.5, title = "Sample Flow", background = "black", dygraphOutput("plot11", height = 150)),
box(width = 1.5, title = "Last 24 Hrs", background = "black", dygraphOutput("plot12", height = 150))
),
有没有办法将8个盒子装满一整行,填满窗户?
[如果您在浏览器中检查这些框,则它们分别包装在col-sm-6
类中。因此,如果您将col-sm-6
宽度更改为12.5%(即100%/元素数),则它们都应适合一行。如果您有更复杂的应用程序,则可能希望为其指定一个特定的id
而不是修改整个类,但是对于此示例,只需更改类本身就可以了。有关使用css样式设置Shiny的更多信息(以及此处使用的语法,tags$head
等),请参见here.
library(shiny)
library(shinydashboard)
ui <- fluidPage(
tags$head(
tags$style(
HTML('
.col-sm-6 {
width: 12.5%;
}
')
)
),
fluidRow(
box(title = "Sample Flow", background = "black"),
box(title = "Last 24 Hrs", background = "black"),
box(title = "Sample Flow", background = "black"),
box(title = "Last 24 Hrs", background = "black"),
box(title = "Sample Flow", background = "black"),
box(title = "Last 24 Hrs", background = "black"),
box(title = "Sample Flow", background = "black"),
box(title = "Last 24 Hrs", background = "black"))
)
server <- function(input, output, session) {}
shinyApp(ui, server)