EuroSciPy logo

EuroSciPy 2013

Brussels, Belgium - August 21-24 2013

Vispy, A Modern and Interactive Scientific Visualization

Nicolas P. Rougier , Almar Klein , Cyrille Rossant , Luke Campagnola

Fri 23 noon–12:30 p.m. in Dupreel


Whereas the availability of data increases exponentially fast, the current visualization tools available today in Python do not scale gracefully to big data. The major plotting library in Python is Matplotlib and is more focused on the generation of static publication-ready figures than interactive visualization. These are really two different, and nearly orthogonal goals. For the former, high display quality is the major objective, whereas speed and reactivity is much more important for the latter. Matplotlib can be used for interactive visualization, but it has not been primarily designed for this. Consequently, the frame rate tends to be low on medium-size data sets, and million-points data sets can not be decently visualized in this way.

Our goal is thus to create the foundations for the next-generation interactive visualization software in Python in close connection with matplotlib and upcoming tools such as bokeh. Having a one-stop software for doing all this is, admittedly, a quite difficult and ambitious goal that could take years. But we think it is a reasonable objective, and it can be achieved through multiple successive steps.

Each of us have experience in visualization and OpenGL through various projects (PyQTGraph, Galry, VisVis, Glumpy GL-Agg, etc.) and we decided to join efforts to offer the community a unified framework which will be hopefully as popular as Matplotlib, but for fast interactive visualization of large data sets. Our primary goal is not to make publication quality plots, even if we expect reasonable quality using modern techniques, but rather to get a sense of the data by visualizing it interactively. The nature of the data can be anything: real-time signals, maps, high-dimensional points, surfaces, volumes, images, textures, etc.

The project is in early stages of development and a handful of experiments are available through the github account of the project ( We feel it is important for us to introduce this project in order to gather feedback, comments, requests, and ideas from the scientific community.

The group is of course open to any people interested in the project and a one-day sprint session will take place after the conference.