javascript - 使用D3和Shiny在R中实现 `identify()`

标签 javascript r d3.js shiny

我问了a question关于如何根据用户交互动态绘制,其解决方案 在我的机器上运行良好。

现在我想制作一个在线版本并用Shiny 托管它。 .

我试图将代码放入 server.R 并在 reactivePlot() 中调用 iden() 函数,但是部分identify() 不生效。

那么,关于这个任务有什么提示吗?

最佳答案

试试这个 gallery item.它使用 ggvis 以 Shiny 的方式实现这一目标。 万一画廊消失了,这里有一些最小的代码会产生一个工具提示,类似于 identify(),使用 ggvis。

require(ggvis)
mtcars$model<-rownames(mtcars)
mtcars %>% ggvis(~wt, ~mpg,key:=~model) %>% 
  layer_points() %>% 
  add_tooltip(function(df) df$model)

还有一个更完整但仍然是最小的示例:

require(shiny)
require(ggvis)
mtcars$model<-rownames(mtcars)

shinyApp(
  ui = fluidPage(
    sidebarLayout(
      sidebarPanel(h2("GGVis to Identify Points")),
      mainPanel(ggvisOutput("carsplot"))
    )
  ), 
  server = function(input, output) {
    vis <- reactive({ 
      mtcars %>% ggvis(~wt, ~mpg,key:=~model) %>% 
        layer_points() %>% 
        add_tooltip(function(df) df$model)
    })
    vis %>% bind_shiny("carsplot")
  }

)

关于javascript - 使用D3和Shiny在R中实现 `identify()`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13782803/

相关文章:

javascript - D3 绘制数据集的选择性部分

javascript - 如何根据名称查找某个节点?

javascript - 如何在 Angularjs 中更改 json 数据

javascript - 无法根据选择按预期隐藏数据

r - 使用 rvest 和 purrr::map_df 构建数据框:处理多元素标签

r - 在R中的qplot中绘制平滑线

javascript - 将日期递增到下一个预定义的日期

javascript - Twitter Bootstrap - 与其他元素排在一起的导航栏宽度

r - 找到点所在的州, `sf` r

d3.js - 仅禁用对选定元素的缩放