Hi everyone,
In this post <https://groups.google.com/d/msg/julia-users/7ApJrQq0NJ8/lCw-5_w4BwAJ> from last Wednesday, Hans-Peter pointed out that plotly.js was made open source ( https://plot.ly/javascript/open-source-announcement/ ). Anyway, I tried my hands at writing a wrapper for the JS API. There already exists Plotly.jl, but that is an API to interact with the company's server requiring login info, etc. With the opening of the JS API, the interaction between Julia and Plotly can be much simpler, I think. In the other post, I mused that it should be straightforward to hook up Plotly.js with Juno, so here is a snapshot: <https://lh3.googleusercontent.com/-7hvOPpH5FeQ/VlM8tq2ntHI/AAAAAAAAAKI/ecFtw7JxLrw/s1600/PlotlyJS.png> To make it interactive, I used WebSockets.jl. One neat artifact of that is you can stream the charts to multiple connections. Here is a silly video demo of me controlling 4 browsers (only 3 are visible) including an iPhone from Juno: https://www.youtube.com/watch?v=mWDyyfVNqP0 The same concept should work with Vega.jl in Juno. I call this a "Pre-announcement", because it is not really ready for the wild yet, but it is far enough that if some friendlies would like to have a look and help me get it in shape, that would be more than welcome. Currently, I am struggling a bit to get the paths correct. If I "git clone" it and run it from the REPL, then I can make it work, but if I "Pkg.clone" it, the path to the html containing the scripts is wrong. Here are the lines in question: # res = Response(open(readall,Pkg.dir("Plotly","src","web","plotly.html"))) res = Response(open(readall,"web/plotly.html")) When run from the REPL (after CD'ing to the directory), the code will find plotly.html. But if I Pkg.clone, it can't find it. It seems to find it when I use the commented Pkg.dir, but then that doesn't work when I'm trying to test before committing to Github and Pkg.checkout etc. Any ideas? Anyway, this has been kind of fun and if others can help improve it, that would be a great learning experience for me. Best regards, Eric