Приложение ниже работает нормально. Однако я хотел бы, чтобы выходные значения по отношению к датам были другими, то есть вместо 2021-01-01 я хотел бы, чтобы они выходили так: 01-01-2021. Очевидно, без изменения df database
напрямую и да на выходе.
Большое спасибо!
library(shiny)
library(shinythemes)
function.cl<-function(df,date, d1,d2){
df <- structure(
list(date = c("2021-01-01","2021-01-02","2021-01-03","2021-01-04","2021-01-05"),
d1 = c(0,1,4,5,6), d2 = c(2,4,5,6,7)),class = "data.frame", row.names = c(NA, -5L))
}
ui <- fluidPage(
ui <- shiny::navbarPage(theme = shinytheme("flatly"), collapsible = TRUE,
br(),
tabPanel("",
sidebarLayout(
sidebarPanel(
selectInput("date", label = h4("Date"),""),
selectInput("d1", label = h4("D1"),""),
selectInput("d2", label = h4("D2"),""),
br(),
actionButton("reset", "Reset"),
),
mainPanel(
))
)))
server <- function(input, output,session) {
data <- reactive(function.cl())
observe({
updateSelectInput(session, "date",labe ="Date", unique(data()$date))
updateSelectInput(session, "d1", label = "D1", unique(data()$d1))
updateSelectInput(session, "d2", label = "D2", unique(data()$d2))
})
}
shinyApp(ui = ui, server = server)
#НОВЫЙ КОД
library(shiny)
library(shinythemes)
library(openxlsx)
library(shinyBS)
library(shinyWidgets)
library(openxlsx)
library(writexl)
library(readxl)
library(DT)
ui <- fluidPage(
ui <- shiny::navbarPage(theme = shinytheme("flatly"), collapsible = TRUE,
br(),
tabPanel("",
fileInput("file", "Please upload a file", accept = c(".xlsx")),
sidebarLayout(
sidebarPanel(
selectInput("date", label = h4("Date"),""),
selectInput("d1", label = h4("D1"),""),
selectInput("d2", label = h4("D2"),""),
br(),
),
mainPanel(
))
)))
server <- function(input, output, session) {
df1 <- reactiveValues(dat=NULL)
data <- eventReactive(input$file, {
if (is.null(input$file)) return(NULL)
df <- read_excel(input$file$datapath)
df
})
observe({
df1$dat <- data()
})
observeEvent(input$file, {
if (!is.null(df1$dat)) {
data <- df1$dat
updateSelectInput(session, "date", label = "Date", unique(data$Date))
updateSelectInput(session, "d1", label = "D1", unique(data$D1))
updateSelectInput(session, "d2", label = "D2", unique(data$D2))
}
})
}
shinyApp(ui = ui, server = server)
Мне понравился первый способ, которым вы это сделали, используя dateInput(). Стало лучше. Но мне нужна помощь с этой новой формой, которую вы предоставили. У меня есть случай, когда база данных вставляется с помощью fileInput, и я не устанавливаю df в коде. Я собираюсь поместить этот новый код, который похож на приведенный выше, чтобы вы могли его увидеть. Мне просто нужна ваша помощь относительно того, как это будет выглядеть в этом коде с использованием dateInput().
Почему бы вам тогда не отметить это как принятое и/или не проголосовать и не опубликовать новый вопрос с вашей новой проблемой. Если вы свяжете его здесь после того, как опубликуете, я посмотрю, смогу ли я ответить, если для вас
Приносим извинения за неудобства. Я задал новый вопрос, если вы можете взглянуть, я был бы признателен. coderhelper.com/questions/68706475/…
Совершенно никаких проблем. Я посмотрю на ваш другой вопрос, когда у меня будет минутка :)
Извините, я не заметил, что вы обновили свой код выше. Я обновлю свой ответ, а также отвечу на другой вопрос, просто для ясности :)
Привет, Сэм Роджерс! Не могли бы вы взглянуть на этот вопрос? coderhelper.com/questions/68807752/… Большое спасибо!
Конечно, сейчас посмотрю
Привет, Сэм Роджерс! Извините, что прошу вас увидеть еще один вопрос. Но я вспомнил, что видел в вашем профиле, что вы статистик и программист, поэтому я думаю, что вы можете помочь. Мой брат Антонио задал вопрос, мы вместе работаем над проблемой. Если вы можете взглянуть, я ценю это. Любая помощь приветствуется. coderhelper.com/questions/68840372/forecasting-analysis-in-r