只是我或者它是一个错误,如果我有一个因子列并且我使用DT添加过滤器,下拉菜单会在闪亮的仪表板中截止。
我使用mtcars作为例子,我将cyl作为一个因素。 (数字滑块过滤器工作正常,但因子过滤器不行)。这是代码和屏幕截图。
## app.R ##
library(shinydashboard)
library(dplyr)
mtcars$cyl <- as.factor(mtcars$cyl)
ui <- dashboardPage(
dashboardHeader(title = "Simple Dashboard"),
## Sidebar content
dashboardSidebar(sidebarMenu(
menuItem(
"Dashboard", tabName = "dashboard", icon = icon("dashboard")
),
menuItem("Widgets", tabName = "widgets", icon = icon("th"))
)),
## Body content
dashboardBody(tabItems(
# First tab content
tabItem(tabName = "dashboard",
fluidRow(
box(plotOutput("plot1", height = 250)),
box(
title = "Controls",
sliderInput("slider", "Number of observations:", 1, 100, 50)
)
)),
# Second tab content
tabItem(tabName = "widgets",
fluidRow(DT::dataTableOutput('items_dt')))
))
)
server <- function(input, output) {
set.seed(122)
histdata <- rnorm(500)
output$plot1 <- renderPlot({
data <- histdata\[seq_len(input$slider)\]
hist(data)
})
output$items_dt = DT::renderDataTable(
mtcars,
filter = 'bottom',
options = list(scrollX = TRUE)
)
}
shinyApp(ui, server)
答案 0 :(得分:2)
通过不执行scrollX或scrollY以及将过滤器放在顶部,我有更好的运气。
乙^(
答案 1 :(得分:0)
似乎是带有DT的闪亮仪表板中的一个错误。报告https://github.com/rstudio/DT/issues/230
答案 2 :(得分:0)
我通过将数据框的列类型更改为因子来解决它:df[, 'X1'] <- as.factor(df[, 'X1'])