Jetez un oeil à cette fonction personnalisée monthStart
ci-dessous qui peut être utilisé pour forcer la date à la première date de ce mois et de cette année
Exemple 1, Afficher le premier jour d'un mois donné. Cela peut être utile si vous souhaitez utiliser l'objet de date pour une utilisation ultérieure dans votre application, il sera toujours pointer vers le premier jour d'un mois et une année
#rm(list=ls())
library(shiny)
monthStart <- function(x) {
x <- as.POSIXlt(x)
x$mday <- 1
as.Date(x)
}
ui <- basicPage(dateRangeInput('dateRange',label = "Pédiode d'analyse : ",format = "mm/yyyy",language="fr",start = Sys.Date(), end=Sys.Date(),startview = "year",separator = " - "),
textOutput("SliderText")
)
server <- shinyServer(function(input, output, session){
Dates <- reactiveValues()
observe({
Dates$SelectedDates <- c(as.character(monthStart(input$dateRange[1])),as.character(monthStart(input$dateRange[2])))
})
output$SliderText <- renderText({Dates$SelectedDates})
})
shinyApp(ui = ui, server = server)
Exemple 2, Afficher seulement le mois et l'année
#rm(list=ls())
library(shiny)
monthStart <- function(x) {
x <- as.POSIXlt(x)
x$mday <- 1
as.Date(x)
}
ui <- basicPage(dateRangeInput('dateRange',label = "Pédiode d'analyse : ",format = "mm/yyyy",language="fr",start = Sys.Date(), end=Sys.Date(),startview = "year",separator = " - "),
textOutput("SliderText")
)
server <- shinyServer(function(input, output, session){
Dates <- reactiveValues()
observe({
Dates$SelectedDates <- c(as.character(format(input$dateRange[1],format = "%m/%Y")),as.character(format(input$dateRange[2],format = "%m/%Y")))
})
output$SliderText <- renderText({Dates$SelectedDates})
})
shinyApp(ui = ui, server = server)
Ok, mais je ne veux pas penser à l'utilisateur t Un jour a été choisi, peut-être le meilleur moyen d'y parvenir est de créer un curseur ou un selectinput avec mm-yyyy. – TiFr3D
Comme je ne savais pas comment vous voulez utiliser cette fonction, j'ai inclus le jour, car dans votre analyse, vous pourriez en avoir besoin. À des fins d'affichage, vous pouvez simplement rendre la date sans le jour. Voir les mises à jour ci-dessus –
Désolé je ne l'ai pas expliqué clairement, j'ai ajouté une image pour montrer l'étape que je veux supprimer ou masquer. – TiFr3D