Support streaming data into a visualization via core.async chan
metasoarous opened this issue · comments
This issue is being peeled off from #95; Now that #167 has been resolved, it is possible to stream data into the visualization via the vega view
API, using the :view-callback
option of the reagent components. However, this is hardly straightforward or idiomatic.
It would be amazing if you could just stream data in via a core.async channel. There are a couple of ways this could work:
- Simply pass a core.async chan in the data position of a vega(-lite) specification
- Pass something like a
:data-streams
map to the reagent components mapping dataset names to channels - Both?
The :data-streams
approach would allow you to kick off the visualization with an initial data payload. It's also worth noting that the view.insert
API actually require you insert data by dataset name, but this could potentially abstracted over if we want to support the first option here.