Skip to content

progressivis/progressivis

Repository files navigation

ProgressiVis

Python Tests Documentation Status linting - Ruff types - Mypy License

ProgressiVis is a Python toolkit and scientific workflow system that implements a new programming paradigm that we call Progressive Analytics aimed at performing analytics in a progressive way. It allows analysts to see the progress of their analysis and to steer it while the computation is being done. See the workshop paper.

Instead of running algorithms to completion one after the other, as done in all existing scientific analysis systems, ProgressiVis modules run in short batches, each batch being only allowed to run for a specific quantum of time - typically 1 second - producing a usable result in the end, and yielding control to the next module. To perform the whole computation, ProgressiVis loops over the modules as many times as necessary to converge to a result that the analyst considers satisfactory.

ProgressiVis relies on well-known Python libraries, such as numpy,scipy, Pandas, and Scikit-Learn.

For now, ProgressiVis is mostly a proof of concept. You can find its documentation here.

Live demos

Many interactive demos are available online. They will run remotely on mybinder.org, so you can experiment with ProgressiVis with no need to install it locally.

Binder

Click the "launch binder" image above to run the live demos on mybinder.org.

NB: Interactive demos may take up to several minutes to build, depending on the server load.

Installation

See the installation instructions provided here.

Examples

To see examples, either look at the tests in the tests directory, or try the examples in the examples directory.

Running demos (on your computer)

ProgressiVis demos needs visualisations which are availables in the progressivis extension called ipyprogressivis. Please follow the instructions provided here

Contribute

Support

If you are having issues, please let us know at issue.

License

The project is licensed under the BSD license.