Vispy is an OpenGL-based interactive visualization library in Python. Its goal is to make it easy to create beautiful and fast dynamic visualizations. For example, scientific plotting of tens of millions of points, interacting with complex polygonial models, and (dynamic) volume rendering. All thanks to the graphics card’s hardware acceleration.
Vispy will eventually offer graphical APIs at multiple levels, including a matplotlib-like scientific plotting library. Currently, only the lowest-level API is implemented: it brings an easy-to-use Pythonic object-oriented interface to OpenGL. This layer requires you to have basic knowledge of modern OpenGL (notably the OpenGL shading language, GLSL).
For this reason, Vispy is not yet suitable for the general scientist, but it will be in the future (in several months at the very least). We are currently working on higher level layers. They will hide most OpenGL concepts and let you create beautiful visualizations in a few lines of code. Stay tuned!
Visualization with vispy is easy! For more code samples, please visit the examples section in the documentation.
# Note that this needs vispy version > 0.1.0 from vispy import app from vispy.gloo import gl c = app.Canvas(show=True) @c.connect def on_paint(event): gl.glClearColor(0,1,0,1) gl.glClear(gl.GL_COLOR_BUFFER_BIT) app.run()
Vispy is organized in the following modules:
The visualisation modules are organized in levels that provide API’s at increasing abstraction. Libraries and applications that use vispy can use it at the desired level.
vispy.app and vispy.gloo are currently in beta stage; we try to keep the API’s stable, but may introduce small changes.
Vispy runs on Python 2.6 and higher, including Python 3. Vispy depends on Numpy and PyOpenGL.
Since Vispy is pure Python, installation is easy: pip install vispy. Alternatively, you can get the source and run python setup.py install.
The core development team consists of Luke Campagnola, Almar Klein, Nicolas Rougier and Cyrille Rossant. We have each written our own Python visualization toolkit (PyQtGraph, Visvis, Glumpy and Galry, respectively), and decided to team-up.
Vispy will eventually replace all of our visualization libraries, so you can expect vispy to have all the features of our respective toolkits combined, and more.