Scientific computing and data visualization.

bernhard.voigt at gmail.com bernhard.voigt at gmail.com
Sun Oct 8 07:20:10 EDT 2006


> > I can definitively second that. ROOT is a bit hard to learn but very,
> > very powerful and PyRoot is really a pleasure to work with.
>
> It sounds interesting. Right now, I use matplotlib for
> 2D plotting and vtk for 3D. Do you have any experience and
> can give some recommendations?

Hi Fabian!

I recommend using matplotlib for data visualization, because the usage
of the plotting commands is much(!!!) more convenient. In ROOT you have
to create objects before you can draw your diagrams. The constructor
often requires arguments about the number of space points, axis length,
name etc. On the other hand, the figure itself has a GUI to manipulate
the plot, which sometimes is nicer than doing everything in the script.
In particular the 3D visualization seems to be more comprehensive (lots
of drawing options, rotation of the plot with the mouse, changing of
visualization lego, surf, contour plots etc.).

ROOT has more than plotting. For example it has a whole bunch of
containers to store very large amounts of data (within complex
datastructures), fitting routines, minimizers etc. But you get that
with scipy and numpy.

I'm using 80% of the time matplotlib because it's much quicker for
quick glances at your data. If I need sophisitcated 3D plots, I use
ROOT, but I would love to switch to matplotlib for this, as well.

My guess is that using python and matplotlib with scipy speeds up my
work by at least 30% in comparison to using purely ROOT (and code in
C++). And even 10-15% in comparison to the usage of ROOT with pyRoot.

Enjoy! Bernhard




More information about the Python-list mailing list