Я использую «блестящий» в RStudio.R: Shiny - update dateRangeInput начало и конец
Я хочу, чтобы выбранные даты виджета dateRangeInput обновлялись с минимальным и максимальным набором данных.
Когда я пробую код ниже (упрощенный только для даты начала), дата начала не отображается в левом поле виджета диапазона дат: вместо этого поле отображается пустым (но на самом деле оно установлено как сегодняшняя дата - при нажатии на пустое поле появляется календарь с сегодняшней датой).
ui.r: dateRangeInput ("даты", метка = "Диапазон дат", запуск "mydatestart =, конец = '2014-05-06')
Минимальная дата фактически выбран, так как он показывает при использовании до
ui.r: textOutput ('mydatestart')
Вот воспроизводимым пример:
ui.R
library(shiny) shinyUI({ sidebarPanel( dateRangeInput("dates", label = "Date range", start='mydatestart', end = '2014-05-06'), textOutput('mydatestart') ) })
server.R
shinyServer(function(input, output) {
mydate<-c("2013-04-24", "2013-04-25", "2013-04-26", "2013-04-27", "2013-04-28", "2013-04-28", "2013-04-29", "2013-04-30")
output$mydatestart<-renderText(min(mydate))
})
Использование выходной $ mydatestart < -renderText (as.Date (мин (MyDate))) дает один и тот же вопрос.
Вы знаете, почему это происходит?
Спасибо, Yvan
Спасибо за ваш быстрый ответ. Это действительно работает в этом примере. Однако как бы вы получили тот же результат, используя * output * object (например, * mydatestart * в примере) на сервере.R? Я хочу использовать этот виджет как часть более крупного блестящего приложения, в котором пользователь загружает набор данных. Тогда виджет dateRangeInput должен будет получить минимальные и максимальные даты из загруженного набора данных. Вы рекомендуете использовать renderUI() в server.R вместо этого? – YGS
@YGS Конечно, см. Мой обновленный ответ. – nrussell
Я не могу пометить его как таковой, но ваш скрипт также является хорошим ответом, используя * uiOutput() * в ui.R - вместо * htmlOutput() * в @ Andriy_T's – YGS