2017-11-28 4 views
0

여기 간단한 dygraph의 RStudio 뷰어 창 내에서 dygraph을 클릭하여 좌표 시리즈 위에 마우스 이동으로얻기 점은

library(dygraphs) 
dg <- dygraph(ldeaths) 
dg 

는 개별 값이 표시됩니다. 한 점을 클릭하고 x 좌표 (즉, 날짜)를 콘솔에 표시하거나 변수에 저장하고 싶습니다. 어떻게해야합니까? 답은 dyCallbacks()와 관련이있는 것 같지만 실제로는 알 수 없습니다. 예를 들어, 사전에

> d <- dg %>% dyCallbacks(pointClickCallback = 'function(e, p) {return 
> p.x;}') d$x$attrs$pointClickCallback [1] "function(e, p) {return 
> p.x;}" attr(,"class") [1] "JS_EVAL" 

감사합니다,
파비오

답변

0

나는 자바 스크립트에 대해 잘 모르겠지만, 당신이 반짝에 열려있는 경우, 당신은 당신이 원하는 것을 얻을 수 있습니다. 클릭 입력 바인딩Shiny에서 x 변수를 인쇄 할 수 있으며 Shiny를 사용하면 원하는 경우 쉽게 저장할 수 있습니다. 다음은 할 수있는 일의 최소 예입니다.

ui = fluidPage(
    mainPanel(
    dygraphOutput("dygraph"), 
    br(), 
    textOutput("clicked", inline = TRUE) 
) 
) 


server = function(input, output) { 


    output$dygraph <- renderDygraph({ 
    dygraph(ldeaths) 
    }) 

    output$clicked <- renderText({ 
    strftime(req(input$dygraph_click$x), "%d %b %Y") 
    }) 

    clickedPr <- reactive({ 
    print(strftime(req(input$dygraph_click$x), "%d %b %Y")) 
    }) 

    observeEvent(input$dygraph_click$x,{ 

     write.csv(clickedPr(), "test.csv") 
    }) 


} 

shinyApp(ui = ui, server = server)