使用D3和Shiny在R中实现`identify()`
我问了一个关于如何根据用户交互进行dynamic绘图的问题 ,其解决scheme在我的机器上运行得非常好。
现在我想制作一个在线版本,并使用Shiny进行托pipe。
我已经尝试将代码放入server.R
并调用reactivePlot()
server.R
iden()
函数,但是identify()
的部分不起作用。
那么,这个任务有什么提示?
试试这个画廊项目。 它使用ggvis来实现这个shiny的目标。 如果图库消失,这里是一些最小的代码,将产生一个工具提示,类似于使用ggvis的identify()
。
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") } )