Setvis is a python library for visualising set membership and patterns of missingness in data.
The plotting and interactive workflow of Setvis is designed for use within a Jupyter notebook (although it is possible to run outside Jupyter). The other components of Setvis can be used interactively or programmatically. The interactive plots are powered by Bokeh widgets.
It operates on data using a memory efficient architecture, and supports loading data from flat files, Pandas dataframes, and directly from a Postgres database.
The setvis documentation is hosted on Read the Docs.
For the complete installation instructions, consult the installation page of the documentation, which includes information on some extra installation options and setting up a suitable environment on several platforms.
We recommend installing setvis in a python virtual environment or Conda environment.
To install setvis, most users should run:
pip install 'setvis[notebooks]'
This will include everything to run setvis in a notebook, and to run the tutorial examples that do not need a database connection.
The Bokeh plots produced by setvis require the package notebook >= 6.4
to display properly. This will be included when installing setvis using the command above.
For basic examples, please see the two example notebooks:
Additionally, there is a series of Tutorials notebooks, starting with Tutorial 1.
After installing setvis, to follow theses tutorials interactively you will need to clone or download this repository. Then start jupyter from within it:
python -m jupyter notebook notebooks
The setvis software is released under the Apache Licence, version 2.0. See LICENCE for details.
The data files ./examples/datasets/simpsons - Format 1.csv
and ./examples/datasets/simpsons - Format 2.csv
, are based on a data file included in UpSet, copyright Visual Computing Group, Harvard, and distributed here under the terms of the MIT Licence.
The other data files in ./examples/datasets/
are released under the Creative Commons Attribution 4.0 International Licence (CC-BY-4.0).
@article{Ruddle2024, doi = {10.21105/joss.06925}, url = {https://doi.org/10.21105/joss.06925}, year = {2024}, publisher = {The Open Journal}, volume = {9}, number = {103}, pages = {6925}, author = {R.a. Ruddle and L. Hama and P Wochner and O.t. Strickson}, title = {SetVis: Visualizing Large Numbers of Sets and Intersections}, journal = {Journal of Open Source Software} }
The development of the setvis software was supported by funding from the Engineering and Physical Sciences Research Council (EP/N013980/1; EP/R511717/1) and the Alan Turing Institute.