I am creating a Shiny app using structure as below:
library(shiny)
library(shinydashboard)
source('./scr/data_preparation.R')
shinyApp(
ui = dashboardPage(
header = dashboardHeader(disable = TRUE),
sidebar = dashboardSidebar(width = 0),
body = dashboardBody(
tags$head(
# Note the wrapping of the string in HTML()
tags$style(
body {
background-color: black;
color: white;
}
h2 {
font-family: 'Yusei Magic', sans-serif;
}
.shiny-input-container {
color: #474747;
}"))),
### changing theme
shinyDashboardThemes(
theme = "onenote"
),
#
fluidRow(
column(12, align="center", offset = 0, style='padding:0px;',
div(img(src="Picture2.jpg", height='100%', width='100%'))
)
),
#
br(),
box(
),
box(
),
fluidRow(width = 12,
)),
fluidRow( ),
fluidRow(
),
fluidRow(
)),
column(8,
box( width = 12, background = NULL,
fluidRow( background = NULL,
plotlyOutput("plot1"))
))))),
server = function(input, output) {
# Create a "data_source" reactive variable
data_intacc <- reactive({
data <- ind1
return(data)
})
output$plot <-renderPlotly({
data <- data_intacc()
})
}
)
I want to organize my code so in the last fluidRow of my UI I will have 2 boxes.
In the left box I need to have a Select box widget. Based on this selection I need in the right box to be shown an interface (other widgets and plot).
Because this interfaces are numerous (different plots) I want each of them in a single module .
I am reading some sources about Shiny modules but still I cannot make it work for my case.
Can you please help with small example?
Regards