Scala client for the Lightning data visualization server (WIP)
Build the project using sbt
and the assembly plugin
sbt assembly
To then use lightning in the scala REPL, just add the jar to your classpath (here we are assuming you launch from inside lightning-scala
)
scala -classpath target/scala-2.10/lightning-scala-assembly-0.1.0.jar
import org.viz.lightning._
val lgn = Lightning(host="http://my-lightning-instance.herokuapp.com")
lgn.createSession()
lgn.createSession("provide an optional session name")
Methods are available for the default visualization types included with Lightning
lgn.line(Array(Array(1.0,1.0,2.0,3.0,9.0,20.0)))
lgn.scatter(Array(1.0,2.0,3.0), Array(1.0,1.5,5.0))
Visualizations can be customized through optional parameters
lgn.line(Array(Array(1.0,1.0,2.0),Array(3.0,9.0,20.0)), label=Array(1,2))
lgn.scatter(Array(1.0,2.0,3.0), Array(1.0,1.5,5.0), label=Array(1,2,3))
For any other plot type, just specify by name, and provide the data as a Map
lgn.plot("line", Map("series" -> List(1,1,2,3,9,20)))
This is especially useful when working with custom plot types
Run the unit tests using sbt
by calling
sbt test
You can specify a name to run a subset of the tests
sbt "test-only *LightningPlotsSuite*"
The tests require that a local lightning server is running on http://localhost:3000
The following components need to be added
- Add updating and appending
- Add ability to post images
- Add image-related visualizations (image, gallery, volume)
- Add streaming visualizations (scatter, line)