The racket plot package produces interactive snip% objects which allow 
zooming of the plot area. While this is a cool and sometimes useful 
feature, the functionality is hard coded in the plot-snip% class inside the 
package. I would like to extend the package to allow the user to customize 
the interactive features of the plot -- most of the graphing packages for 
the web support the display of additional information when the user hovers 
the mouse over the plot.

I have built a prototype implementation of adding interactive overlays to 
plot snips, as shown in the image below, and I would like to ask if there 
is interest in adding such a feature to the plot package distributed with 
racket.

At this point, the code is at a "proof of concept" stage, but ultimately, I 
will add interactive features to the plots in my application and they will 
be more complex than just showing the value of a function at a cursor 
location. As part of that experience, I will better understand what actual 
features I need, and hope to refine this interface. I am also looking for 
feedback, in particular if this would be the right approach for doing this.

The prototype implementation is here: 
https://github.com/alex-hhh/plot/tree/ah/interactive-overlays

The code to generate the plot below is here: 
https://gist.github.com/alex-hhh/64f8af9c4bd5b5c65ada62dd9157e938 

As it is implemented now, unless a "hover callback" is added to the plot 
snip, the snip behaves as before, allowing zoom and unzoom when the mouse 
is dragged over the plot area.



<https://lh3.googleusercontent.com/-1k93Zqly2nY/Wm799fRadXI/AAAAAAAACsU/KViXqULmUpA0vToDXXZIrPofWU-ti4zSgCLcBGAs/s1600/plot-interactive-overlay-demo.gif>

<https://lh3.googleusercontent.com/-1k93Zqly2nY/Wm799fRadXI/AAAAAAAACsU/KViXqULmUpA0vToDXXZIrPofWU-ti4zSgCLcBGAs/s1600/plot-interactive-overlay-demo.gif>
Best Regards,
Alex.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to