[英]menuitem inside box in shinydashboard mainpanel
我想知道我是否可以在 shiny 应用程序的仪表板体内放置类似menuitem
的东西? 在我下面的示例中,菜单项在侧边栏菜单内工作,但不在框内menuitem
!
library(shiny)
library(shinydashboard)
ui <- dashboardPage(
dashboardHeader(),
dashboardSidebar(
menuItem("Dashboard",
fileInput("upload", "Upload"),icon = icon("dashboard"))
),
dashboardBody(
box(width = 4, "test menuitem", solidHeader = TRUE,status = "success",
menuItem("test",
fileInput("up", "Upload"),icon = icon("dashboard"))
)
)
)
server <- function(input, output) { }
shinyApp(ui, server)
我找到了解决方案:来自shinyWidgets
的dropdownButton
library("shiny")
library("shinyWidgets")
ui <- fluidPage(
tags$h2("Dropdown Button"),
br(),
dropdownButton(
tags$h3("List of Inputs"),
selectInput(inputId = 'xcol',
label = 'X Variable',
choices = names(iris)),
selectInput(inputId = 'ycol',
label = 'Y Variable',
choices = names(iris),
selected = names(iris)[[2]]),
sliderInput(inputId = 'clusters',
label = 'Cluster count',
value = 3,
min = 1,
max = 9),
circle = TRUE, status = "danger",
icon = icon("gear"), width = "300px",
tooltip = tooltipOptions(title = "Click to see inputs !")
),
plotOutput(outputId = 'plot1')
)
server <- function(input, output, session) {
selectedData <- reactive({
iris[, c(input$xcol, input$ycol)]
})
clusters <- reactive({
kmeans(selectedData(), input$clusters)
})
output$plot1 <- renderPlot({
palette(c("#E41A1C", "#377EB8", "#4DAF4A", "#984EA3",
"#FF7F00", "#FFFF33", "#A65628", "#F781BF", "#999999"))
par(mar = c(5.1, 4.1, 0, 1))
plot(selectedData(),
col = clusters()$cluster,
pch = 20, cex = 3)
points(clusters()$centers, pch = 4, cex = 4, lwd = 4)
})
}
shinyApp(ui = ui, server = server)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.