4 ms·
Anyone know how this compares to Mayavi? Is it targeting different use cases, or just higher performance, or ...?
by graphene 12y ago
Anyone know how this compares to Mayavi?
Is it targeting different use cases, or just higher performance, or ...?
- makmanalp 12y agoI was wondering the same. Mayavi seems more abstracted vs this is has more low-level opengl guts exposed
- jdreaver 12y agoA lot of time was spent fleshing out the core "gloo" module, which is an object-oriented abstraction of OpenGL. If you know OpenGL, you can create very high performance visualizations. There is currently a lot of work on fleshing out the vispy.scene module, which will add more high-level interfaces for plotting data.
- jre 12y agoMayavi is based on VTK, which is a C++ toolkit for data visualization. It's both an advantage and a drawback, depending on your needs. The good thing is that VTK is solid and if you're familiar with the concepts, it can be powerful, but it's also somewhat complex. On the other hand, the python (traits) wrapper around VTK that mayavi is built upon adds another layer of abstraction and changing things that aren't directly exposed by mayavi is difficult. From a quick look, vispy seems to be built directly on OpenGL and numpy, so I think it will be easier to customize. But the devs will have to rewrite a lot of what VTK provides. It also aims at providing an integration in ipython notebook (with WebGL), which is awesome :)
- rossant 12y agoVispy dev here. Mayavi/VTK are mature, very powerful and feature-complete. Vispy is not even close to offer the same amount of functionality. But eventually, we hope it will. The low-level OpenGL interfaces in Vispy are now relatively solid, and are the foundations of higher-level, more abstract graphical interfaces we are currently developing (similar to VTK and Mayavi). Our goal is to let scientists easily create fast interactive visualizations in 2D and 3D without any knowledge of OpenGL. Here is a very early example of these higher-level interfaces: http://vispy.org/examples/basics/scene/surface_plot.html http://vispy.org/examples/basics/scene/surface_plot.html We also have started to work on an OpenGL backend for matplotlib. Finally, a few remarks: * Vispy focuses on performance and big datasets (with tens of millions of points or more) with minimal memory footprint (using NumPy) * Vispy is pure Python and depends just on NumPy, basically. VTK is a heavy C++ library, sometimes complicated to install.