I have looked online everywhere to no avail. I cannot seem to get these plots to maximize their heights and widths to full window size upon maximizing the boxes. It is a requirement that I use bs4Dash
. I looked at How to adjust plot size when the box is maximized - Giters but the provided solutions did not seem to work for me. What am I missing?
library(shiny)
library(bs4Dash)
library(circlepackeR) # devtools::install_github("jeromefroe/circlepackeR")
library(wordcloud2) # devtools::install_github("lchiffon/wordcloud2")
library(plotly)
ui <- dashboardPage(
dashboardHeader(title = "Basic dashboard"),
dashboardSidebar(),
dashboardBody(
# Boxes need to be put in a row (or column)
fluidRow(
box(id="histbox",
title = "hist box",
plotOutput("plot1",
height = 250),
maximizable = T),
box(id = "circlebox", title="circle box",
circlepackeR::circlepackeROutput("circles"), maximizable = T)
),
fluidRow(
box(id="wordlcoudbox",
title = "wordcloud box",
wordcloud2::wordcloud2Output("cloud"),
maximizable = T),
box(id = "plotlybox",
title = "plotly box",
plotly::plotlyOutput("plotlyplot"),
maximizable = T))
)
)
server <- function(input, output) {
set.seed(122)
histdata <- rnorm(500)
output$plot1 <- renderPlot({
data <- histdata[seq_len(10)]
hist(data)
})
output$plotlyplot <- renderPlotly(
plot1 <- plot_ly(
type = 'scatter',
mode = 'markers')
)
hierarchical_list <- list(name = "World",
children = list(
list(name = "North America",
children = list(
list(name = "United States", size = 308865000),
list(name = "Mexico", size = 107550697),
list(name = "Canada", size = 34033000))),
list(name = "South America",
children = list(
list(name = "Brazil", size = 192612000),
list(name = "Colombia", size = 45349000),
list(name = "Argentina", size = 40134425))),
list(name = "Europe",
children = list(
list(name = "Germany", size = 81757600),
list(name = "France", size = 65447374),
list(name = "United Kingdom", size = 62041708))),
list(name = "Africa",
children = list(
list(name = "Nigeria", size = 154729000),
list(name = "Ethiopia", size = 79221000),
list(name = "Egypt", size = 77979000))),
list(name = "Asia",
children = list(
list(name = "China", size = 1336335000),
list(name = "India", size = 1178225000),
list(name = "Indonesia", size = 231369500)))
)
)
output$cloud <- wordcloud2::renderWordcloud2(wordcloud2(demoFreq,
minRotation = -pi/6,
maxRotation = -pi/6,
minSize = 10,
rotateRatio = 1))
output$circles <- circlepackeR::renderCirclepackeR(circlepackeR(hierarchical_list))
}
shinyApp(ui, server)