Вы можете использовать splitLayout
:
library(shinydashboard)
shinyApp(
ui = fluidPage(
splitLayout(
valueBoxOutput("box1"),
valueBoxOutput("box2"),
valueBoxOutput("box3"),
valueBoxOutput("box4"),
valueBoxOutput("box5"),
valueBoxOutput("box6"),
valueBoxOutput("box7"),
valueBoxOutput("box8")
)
),
server = function(input, output){
output$box1 <- renderInfoBox({
infoBox(
"box1",
"A",
icon = icon("credit-card")
)
})
output$box2 <- renderInfoBox({
infoBox(
"box2",
"B",
icon = icon("credit-card")
)
})
output$box3 <- renderInfoBox({
infoBox(
"box3",
"C",
icon = icon("credit-card")
)
})
output$box4 <- renderInfoBox({
infoBox(
"box4",
"D",
icon = icon("credit-card")
)
})
output$box5 <- renderInfoBox({
infoBox(
"box5",
"E",
icon = icon("credit-card")
)
})
output$box6 <- renderInfoBox({
infoBox(
"box6",
"F",
icon = icon("credit-card")
)
})
output$box7 <- renderInfoBox({
infoBox(
"box7",
"G",
icon = icon("credit-card")
)
})
output$box8 <- renderInfoBox({
infoBox(
"box8",
"H",
icon = icon("credit-card")
)
})
}
)