How to extract selected data from interactive htmlwidget plot - r

I am trying to figure out a way to extract data from a selection of an interactive plot in Shiny. I build a parallel coordinates plot using a package found at https://github.com/timelyportfolio/parcoords which builds a parcoords chart using htmlWidgets. It allows users to make specific slections, as seen below:
What I need is a way to extract the highlighted rows from the underlying data set, either through a download button or data table. Is there anyway to pull out this info from the underlying htmlWidget process? Any advice is appreciated.

Using crosstalk you can let one htmlwidget talk to another. The dev version of parcoords supports crosstalk integration as does datatable, so you can link the two with minimal effort

Related

Is there a way to recover a ggplot2 image from a Plotly image?

I have some code that generates a plotly image in R. Previously I included this plot in a presentation using Rstudio/ioslides. The people I am collaborating with want a version in powerpoint. I am trying to use the ReporterRs package in order to create an re-producible shell powerpoint presentation with all of my plots. However ReporterRs only accepts lattice, ggplot2, and base images. Since there is a way to convert ggplot2 objects to plotly images I was hoping there was a way to go backwards. However I am stuck. I have been unable to "downgrade" my plotly plots to ggplot2. Does anyone know if there is a way to do this?
(I know I can just copy and paste them over but I would like to develop a workflow where I can create easily reproducible and replaceable plots so that I don't have to do very much work if I change the data)

dynamic update to data for dygraph in R shiny

Hello I was wondering is it possible to replicate this (http://dygraphs.com/tests/dynamic-update.html) in R shiny?
I am looking at the documentation for the dygraph package (https://rstudio.github.io/dygraphs/index.html) and cannot see anything associated with it updates to data that don't fully re-draw the graph, perhaps some sort of proxy is required?

How can I build Shiny applications with Animation in R?

I am trying to build a shiny app to build interactive animations with R. I currently have a function that can build gifs/other output options using the Animation package(http://cran.r-project.org/package=animation) that loops through a series of ggplots(by date). And also a shiny app that can show a single ggplot based on the selected date.I want to build a shiny app that refreshes an animation based on a selected date range.
Are there examples of code that uses maybe saveHTML with UIoutput in Shiny? Would this be possible?
reset animation in Shiny R Studio shows someone trying to build an animation within Shiny. https://gist.github.com/yihui/5899181 is example of integrating a saveGIF function into a shiny app, but that is through a download.
Alternative suggestions/packages I could look at to approach this problem in R not necessarily using Animation and/or Shiny would also be appreciated.
I suggest using the googleVis package --> the tool, gvisMotionchart. It's really simple to work with, just make sure your data is numeric or time oriented in some way and also have some character/categorical variable to plot as circles. Best of all is that all animation tools are ALREADY included inside the motion chart.
If you want details how to create this, here is a model example of how to detailed in this thread.
Chart not generated in R shiny when run locally using googleVis
Here's a screenshot of an example of one I've created to visualize chess data.
googlevis example

R and googleVis - possible to make a "motion map"?

I am typically using R to do statistical analysis, and rather new to the data visualization capabilities. I'm trying to figure out if there is some way to marry the motion chart package gvisMotionChart with the mapping package, gvisGeoMap. I'd like to display a video of events over time, appearing on a map on their date of occurrence at lat/lon coordinates and then fading out. Anyone know if it's possible to do this? Any additional concerns if I have over 50,000 records (daily over 5 years) that I want to feed in to be displayed?
Please note that I do not have to use the gvis packages--I am just using these to motivate the idea. If there are other dynamic mapping packages available in R that will just draw on a shapefile and my event records, all the better.
Thanks!

SVGAnnotation to create tool tips for each value in R heatmaps

I'd like to create a heat map in R that I want to use on a website. I stumbled upon the SVGAnnotation package which seems to be very nice to process SVG graphics in R to make them more interactive. First, I was planning to add tool tips for each cell in the heatmap - if the user hovers over the cell, the value of this cell should pop up. However, I am fighting with SVGAnnotation for more than 3 hours now, reading and trying things, and I can't get it to work.
I would appreciate any help on the SVGAnnotation tool tip function. But I would also very much appreciate alternatives to SVGAnnotation to add some activity to my R SVG heatmap.
So, what I have got so far looks like this:
library(SVGAnnotation)
data(mtcars)
cars <- as.matrix(mtcars)
map <- svgPlot(heatmap(cars))
addToolTips(map, ...) # problem
saveXML(map, "cars.svg")
My problem is the addToolTips function itself, I guess. Intuitively, I would simply insert the data matrix, i.e., cars, but this does not work and R gets stuck (it's calculating, but doesn't return anything, I waited 50 minutes)
EDIT:
After some more online research, I found a good example of what I want to achieve: http://online.wsj.com/article/SB125993225142676615.html#articleTabs=interactive
This heat map looks really great, and the interactive features (tool tips) work very well. I am wondering how they did that. To me, it looks like the graphic was done in R using the ggplot package.
I wrote a command line tool that can do exactly that if you are still interested to add tool tips to your heat map. It runs in Windows/Linux/MacOS terminals. All you need as input is the heat map as svg file and the data table/matrix that you used as input to create your heat map as csv or other text file.

Resources