BSD-3-Clause licensed by Marco Zocca
Maintained by ocramz fripost org
This version can be pinned in stack with:rigel-viz-,2063

Module documentation for


Build Status

:star2: Rigel (also called Beta Orionis) is the seventh-brightest star in the night sky, slightly less visible than Vega :star2:

A (mid-level, simplified, opinionated) Haskell wrapper for vega-lite, currently targeting version 3 of the vega-lite schema.

Aims / definitions

  • mid-level :

    • types which can take one of a few possible values are represented by sum types, not by strings.
    • glyph colours are encoded via the colour Haskell library.
  • simplified : the generated vega-lite JSON is not normalized, i.e. has some redundancies. This reflects the internal representation but also makes it easier to reason “locally” (i.e. code sections don’t visibly exploit inheritance from higher layers).

  • opinionated : part of the vega-lite API is not used at all. For example, there is no support for data preprocessing (e.g. summarization etc.). This forces the user to use the host language for preprocessing, which is bound to be more expressive and robust.

Each layer has its own dataset (changes the signature of 'layer'). This lets a user declare overlaid plots that use distinct datasets (e.g. a scatter plot on top of a heatmap of a scalar field).