r - 通过单击 RStudio 查看器 Pane 中的图来获取点坐标

标签 r rstudio dygraphs

这是一个简单的图文:

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"

提前致谢,
法比奥

最佳答案

我对Javascript不太了解,但是如果你对shiny持开放态度,你就能得到你想要的。使用 Shiny 中的点击输入绑定(bind),您可以打印 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)

关于r - 通过单击 RStudio 查看器 Pane 中的图来获取点坐标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47537946/

相关文章:

javascript - 避免使用 dygraphs javascript 在 y 轴上 float 数字标签,并将不同的网格线设置为辅助 y 轴

r - 考虑到每个东西运行了多长时间;计算一段时间内运行的事物总数?

r - 如何在 R 中导入 SVG 文件?

python - 试图使 Rpy2 2.1.9 与 R 2.12.1 一起工作的奇怪问题,在 Windows xp 下使用 Python 2.6 - Rpy 找不到 R.dll?

用于关闭当前选项卡的 R Studio Server 快捷方式

r - 在knitr html中输出R循环内容和输出

r - 图像从 R Markdown 的投影仪输出中推下幻灯片

mysql - 使用 RStudio 连接数据库 SQL

r - 使用 dygraph 显示第二个 Y 轴

javascript - 快速删除dygraph系列的方法