如果可能的话,我希望您帮助我将我的日历链接到我想做的一些散点图。我要解释一下。
我的想法是,当该人在日历上选择 01/01/2021 选项时,他会生成一个散点图,其中包含每个类别的第一个点,即 D1、DR01、DR02、DR03 和 DR04,即点 3 、2、6、5 和 3。
如果在日历 02/01/2021 中选择,则生成包含点 1、4、3、2 和 5 的散点图。
你明白了吗?
我在APP下面留下了一个结构。
非常感谢!
library(shiny)
library(shinythemes)
function.cl<-function(){
df <- structure(list(date = c("2021-01-01","2021-01-02","2021-01-03","2021-01-04","2021-01-05"),
D1 = c(3,1,4,5,6), DR01 = c(2,4,5,6,7), DR02 = c(6,3,2,6,1),DR03 = c(5,2,8,9,7),
DR04 = c(3,5,3,3,7)),class = "data.frame", row.names = c(NA, -5L))
#Scatter Plot
return(list(
"Plot1" = Plot1,
date = df$date
))
}
ui <- fluidPage(
ui <- shiny::navbarPage(theme = shinytheme("flatly"), collapsible = TRUE,
br(),
tabPanel("",
sidebarLayout(
sidebarPanel(
uiOutput("date"),
br(),
),
mainPanel(
tabsetPanel(
tabPanel("",plotOutput("Graph",width = "95%", height = "600"))),
))
)))
server <- function(input, output,session) {
data <- reactive(function.cl())
output$date <- renderUI({
all_dates <- seq(as.Date('2021-01-01'), as.Date('2021-01-15'), by = "day")
disabled <- as.Date(setdiff(all_dates, as.Date(data()$date)), origin = "1970-01-01")
dateInput(input = "date",
label = "Select Date",
min = min(data()$date),
max = max(data()$date),
value = max(data()$date),
format = "dd-mm-yyyy",
datesdisabled = disabled)
})
output$Graph <- renderPlot({
function.cl()[["Plot1"]]
})
}
shinyApp(ui = ui, server = server)