【发布时间】:2020-04-22 03:13:23
【问题描述】:
我正在使用 shinyWidgets 包中的 airMonthpickerInput() 函数。对于我的特定应用程序,起始值(月份)是 2019 年 2 月(如 value = as.Date("2019-02-01") 中定义的那样。根据以下代码,这将正确显示:
library(shiny)
library(shinydashboard)
library(shinyWidgets)
ui <- dashboardPage(
dashboardHeader(title = "Basic dashboard"),
dashboardSidebar(),
dashboardBody(
airMonthpickerInput(inputId = "select_month", label = "Select Month", value = as.Date("2019-02-01")), multiple = FALSE, autoClose = TRUE)
)
)
)
server <- function(input, output) {
}
app<-shinyApp(ui = ui, server = server)
runApp(app, host="0.0.0.0",port=5050, launch.browser = TRUE)
但是,当您尝试更改月份时,生成的弹出窗口默认显示当前月份(在撰写本文时,2020 年 1 月)。应用程序的大部分数据来自 2019 年(正如您所期望的那样,一年已经结束),因此用户必须单击月份选择器,然后单击左箭头以显示 2019 年的月份,然后选择 2019 年内所需的月份。
我想消除这种摩擦(过多的按钮点击),以便在点击月份选择器时,2019 年 2 月仍然突出显示(即显示 2019,而不是 2020)。是否有可能做到这一点?我检查了函数的参数,但看不到任何明显的东西可以让我在尝试更改月份时显示 2019。
【问题讨论】:
-
这是一个错误,请打开一个问题:github.com/dreamRs/shinyWidgets
-
同意维克多。可能对其他人有所帮助的一点 - 从您的问题来看,您的数据听起来像是在进行中,但如果您的所有数据实际上都在 2019 年,您可以使用
minDate和maxDate参数。 -
我确定这是一个错误,那是我的包???? ;p
-
不幸的是,并非所有数据都在 2019 年。现在我们已经到了 2020 年,今年的数据将开始滚动。我需要始终使用“不完整”数据(在我的数据集中)显示第一个月。在此示例中,我将输入硬编码为 2019 年 2 月,但在生产中,随着更多数据从去年添加到系统中并且月份“完成/签署”,月份将动态变化。
-
我看到两个选项,我在问题线程中解释
标签: r shiny shinywidgets