/hvega

Create Vega-Lite visualizations from Haskell.

Primary LanguageJupyter NotebookBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

hvega

Contains the hvega module for creating Vega-Lite visualizations in Haskell, and the ihaskell-hvega module for viewing these visualizations in IHaskell notebooks.

This code is released under the BSD3 license.

It is an almost-direct copy of version 2.2.1 of the Elm Vega library, which is released under a BSD3 license by Jo Wood of the giCentre at the City University of London.

Installation

The packages are available on hackage:

There is a top-level stack.yaml which builds both hvega and ihaskell-hvega using Stack. There is also a shell.nix file for development with Nix, although this is not guaranteed to work as I have not yet fully integrated Nix into my life.

Testing

This would be nice. The IHaskell notebook notebooks/VegaLiteGallery.ipynb is used as a manual test case, but automated tests would be ideal.

The notebooks/ directory contains a (very small, very random) sample of notebooks experimenting with hvega. I recommend using Tweag I/O's jupyterWith environment to view these.

There is also a Data Haskell example notebook.

Development

I created this as a piece of procrastination, while procrastinating with a different task. At present I am not using it, due to lack of time. Please pop on over to GitHub, or ping me on Twitter @doug_burke if you would like to help.