Я пытаюсь получить блестящую панель инструментов, хотя мой график не будет работать.
У меня есть data.frame, состоящий из столбца Date
в формате даты и 4 числовых типов столбцов, которые ISA, NonISA, FixedRateInterest and VariableRateInterest
и заполнили значения N / A 0.
У меня есть флажки с ползунком диапазона дат, и я могу получить график для рендеринга, но когда я пытаюсь добавить DateRangeslider, он не работает и выдает следующую ошибку:
Unknown input:data.frame
Это мой код для создания панели инструментов. Может кто-нибудь помочь мне понять, почему это не работает, пожалуйста? Я знаю, что это как-то связано со строкой ggplot, но не уверен, что.
Спасибо
isa <- read.csv("isa.csv")
isa$Date <- paste0(isa$Date, "01")
isa$Date <- as.character(isa$Date)
isa$Date <- as.Date(isa$Date, format = "%Y%m%d")
date <- isa$Date
# Define UI ----
ui <- fluidPage(
titlePanel("Customer"),
sidebarLayout(
sidebarPanel(
br(),
br(),
br(),
br(),
br(),
br(),
br(),
br(),
br(),
br(),
br(),
br(),
br(),
br(),
br(),
br(),
br(),
img(src = "Logo.jpg", height = 100, width = 150)),
fluidRow(
h1("Choose Dataset"),
br(),
br(),
column(1,
checkboxGroupInput(inputId = "product",
h3("Product"),
choices = c('ISA',
"Non-ISA",
"Fixed",
"Variable"),
selected = 1)),
br(),
br(),
br(),
br(),
br(),
br(),
br(),
br(),
br(),
br(),
br(),
column(2,
dateRangeInput(inputId = "dates", h3("Date Range"),
start = min(isa$Date),
end = max(isa$Date),
min = min(isa$Date),
max = max(isa$Date),
separator = "-", format = "yyyy/mm/dd")
))),
br(),
br(),
br(),
mainPanel(
plotOutput("barplot")
)
)
)
# Define server logic ----
server <- function(input, output) {
dataInput <- reactive({
switch(input$product,
"ISA" = ISA,
"Non-ISA" = isa$NonISA,
"Fixed" = isa$FixedRateInterest,
"Variable" = isa$VariableRateInterest)
Здесь, похоже, что-то не получается
})
dateInputx <- reactive({
isa[isa$Date >= input$dates[1] & isa$Date <= input$dates[2],]
})
output$barplot <- renderPlot({
И не распознает ось x на ggplot
ggplot(data = dataInput(), aes_string(x= dateInputx(), y = dataInput())) +
geom_line(stat ="identity")
})
}
# Run the app ----
shinyApp(ui = ui, server = server)