2017-06-27 70 views
5

Używam ggplotly, aby wyświetlić interaktywną fabułę szeregów czasowych. Oś x ma format daty, ale końcówka kursora w spisku przekształca format daty na numeryczny (z załączonym zrzutem ekranu). Jakieś pomysły na to, jak ustawić datę jako właściwą datę w podpowiedzi?Format daty w podpowiedzi ggplotly

Poniżej znajduje się krótki fragment kodu:

output$ggplot <- renderPlotly({ 

plotbycity<-df_postgres %>% group_by(city, date, bedroooms) %>% 
    filter(city %in% input$checkGroup & bedroooms==input$radio) %>% 
    summarise(count=n(),rent=median(rent)) %>% 
    ungroup() 

plotbycity$date<-as.Date(plotbycity$date) 


# Error handling 
plotbycity<-plotbycity[!is.na(plotbycity$city),] 
if (is.null(plotbycity)) return(NULL) 

#plotbycity<-ungroup(plotbycity) 
#dat <- dat[c("rent", "bedroooms", "date", "City")] 
#dat <- melt(dat,id.vars=c("date", "City", "bedroooms"),na.rm=TRUE) # 

# draw the line plot using ggplot 
gg <-ggplot(plotbycity, aes(x = date, y = rent, group = city, color = city, 
          text = paste('obs: ', count))) + 
    geom_line() + 
    ggtitle("Monthly Rents") 
# #theme_hc(bgcolor = "darkunica") + 
# #scale_fill_hc("darkunica") 

p <- ggplotly(gg, tooltip = c("x", "y", "text")) 
p[![enter image description here][1]][1] 

Odpowiedz

10

Jeśli używasz tylko text w dymku można uczynić bardziej złożoną podpowiedź za pomocą elementu text przekazać do ggplot. Wystarczy zadzwonić as.Date i korzystać z niektórych <br> tagi html w następujący sposób:

# draw the line plot using ggplot 
gg <-ggplot(plotbycity, aes(x = date, y = rent, group = city, color = city, 
    text = paste('Rent ($):', rent, 
       '<br>Date: ', as.Date(date), 
       '<br>Obs: ', count))) + 
    geom_line() + 
    ggtitle("Monthly Rents") 

p <- ggplotly(gg, tooltip = c("text")) 

nadzieję, że pomoże!

+0

Świetne rozwiązanie dla przystani. Chociaż wydaje się, że coś ggplotly powinno zrozumieć (typ danych), dlatego błąd wart zgłoszenie ... –

+0

Całkowicie zgadzam się @MikeDolanFliss – jadianes

+0

Również w przypadku wielu zmiennych to rozwiązanie nie pozwala na wpisanie nazwy zmiennej w tooltip, chociaż etykietka narzędziowa otrzymuje inny kolor dla każdej zmiennej. Zobacz https://www.dropbox.com/s/zts1vghb004f6an/ggvisDateProblem.R?dl=0 – user2955884