R Shiny: Как брать даты из диапазона дат, вставлять их в Quandl и использовать полученные данные для построения графика

Я начал создавать свое первое блестящее приложение, и оно оказалось сложнее, чем я ожидал (обучение!). К сожалению, мне удалось найти в Google массу мелких ошибок в ситуации, когда ошибок нет, а просто возвращается пустой график.

Код: (сервер)

library(ggplot2)
library(Quandl)
library(methods)

shinyServer(
  function(input, output) {
# see (https://stackoverflow.com/questions/22834778/r-shiny-daterangeinput-format)

start_date2<-reactive({format(input$date_range[1])})
end_date2<-reactive({format(input$date_range[2])})

psuedonym<-data.frame(Date=as.Date(character()),
                      Value=integer(),
                      stringsAsFactors=FALSE)

psuedonym<-reactive({Quandl("ZILL/Z94550_A", start_date2, end_date2, type="raw")})

output$qplot<-renderPlot({reactive({plot(psuedonym$Date, psuedonym$Value)})})
})

(ui)

library(shiny)
shinyUI(fluidPage(
    titlePanel("My Shiny App"),

    sidebarLayout(position="right", 
        sidebarPanel(
        plotOutput("qplot")
        ),
    mainPanel(dateRangeInput("date_range", 
        label=h3("Date Range"), start="2010-01-01", end="2015-01-01",
    )
))))

Что я хочу: я хочу, чтобы пользователь мог вводить даты в диапазоне дат, вводить эти переменные в код Quandl (https://www.quandl.com/help/r), а затем получить эти данные для них и создать простой график. Позже я хотел бы добавить возможность определять почтовый индекс и переменные. Это, например, работает:

library(ggplot2)
library(Quandl)
library(methods)

shinyServer(
  function(input, output) {

    start_date="2010-01-01"
    end_date="2015-01-01"
    psuedonym=Quandl("ZILL/Z90001_A", start_date, end_date, type="raw")
    output$qplot<-renderPlot({plot(psuedonym)})

Что, по моему мнению, идет не так: default">R: ошибка в qplot из ggplot2: аргумент env отсутствует, без значения по умолчанию) и предыдущее сообщение об ошибке заставляет меня думать, что что-то пошло не так с фреймом данных, что он каким-то образом не получает данные Quandl .

Заранее благодарю за любую помощь


person William    schedule 27.08.2015    source источник


Ответы (1)


Я думаю, вы неправильно понимаете, как работает блеск.

Посмотрите этот учебник. http://shiny.rstudio.com/tutorial/lesson4/

ui.R

shinyUI(fluidPage(
  sidebarLayout(
    sidebarPanel(dateRangeInput("date_range", label=h3("Date Range"),start="2010-01-01", end="2015-01-01")
    ),
    mainPanel(
      plotOutput("qPlot")
    )
  )
))

сервер.R

shinyServer(function(input, output) {
  output$qPlot <- renderPlot({ 
    psuedonym<-Quandl("ZILL/Z94550_A", input$date_range[1], input$date_range[2], type="raw")
    plot(psuedonym)
  }) 
}
)
person vck    schedule 28.08.2015