2016-04-14 11 views
0

Bir ggplot2 arsa x ekseni sınırlarını ayarlamak için bir dateRangeInput çıktısını kullanan bir R/parlak uygulama üzerinde çalışıyorum. DateRangeInput kullanarak verileri alt etmek iyi çalışıyor, ancak dateRangeInput tarafından döndürülen tarihleri ​​tanımak için scale_x_date (veya scale_x_continuous veya scale_x_datetime) alamıyorum. Format(), as.Date, as.POSIXct kullanmayı denedim, ancak hiç şansınız olmadı. Ben dateRangeInput çıkışını dönüştürmek için deneyin olup olmadığı alıyorum:parlak dateRangeInput kullanarak ggplot içinde eksen sınırları ayarlamak için

İşte
Invalid input: date_trans works with objects of class Date only 

benim sorunun (umarım) tekrarlanabilir örnek: ile

library(shiny) 
library(ggplot2) 
library(dplyr) 

tp_date_pressed <- as.POSIXct(c("2016-01-01", "2016-03-01")) 
sigma <- c(1, 1.5) 
data <- data.frame(tp_date_pressed, sigma) 

ui <- fluidPage(
    dateRangeInput('date', 
     label = 'Date Range', 
     start = Sys.Date() - 180, 
     end = Sys.Date(), 
     max = Sys.Date() 
    ), 
    plotOutput("plot") 
) 

server <- function(input, output) { 
    subData <- reactive({ 
    data %>% 
     filter(
     as.Date(tp_date_pressed) >= as.Date(input$date[1]), 
     as.Date(tp_date_pressed) <= as.Date(input$date[2]) 
    ) 
    }) 

    output$plot <- renderPlot({ 
    ggplot(subData(), aes(tp_date_pressed, sigma)) + 
     geom_point() + 
     scale_x_date(limits = input$date) 
    }) 

} 

shinyApp(ui = ui, server = server) 

cevap

2

sorundur Orijinal data; ggplot bir Date nesnesini beklerken POSIXct'i kullandınız. Eğer

tp_date_pressed <- as.Date(c("2016-01-01", "2016-03-01")) 

Not onu değiştirirseniz scale_x_date sınırları için iki değer beklediği gibi daha sorun üzerinde var olduğunu. Bunu değiştirilebilen örnek için

ve değiştirdiğinizden emin olun.

+0

Teşekkürler John! Tp_date_pressed POSIXct olarak beslendiğinde ggplot doğru bir şey yapmasından dolayı, scale_x_date içinde $ date tarihini kullanarak başımı becermekteydim. Eksen verileri ve eksen limitlerinin aynı nesne tipi olması gerekmiyordu bana hiç! – blongworth

İlgili konular