Scientific computing and data visualization.

F

Fie Pye

Hallo

I would like to have a high class open source tools for scientific computing and powerful 2D and 3D data visualisation. Therefore I chose python, numpy and scipy as a base. Now I am in search for a visualisation tool. I tried matplotlib and py_opendx with OpenDx. OpenDx seems to me very good but the project py_opendx looks like closed. After py_opendx instalation and subsequent testing I got an error that needs discussion with author or an experienced user. Unfortunately a mail to author returned as undeliverable.

Does anybody now about suitable visualisation tool?

Does anybody have an experience with OpenDx and py_opendx instalation?

Thanks for your response.

fiepye
 
M

Matteo

Fie said:
Hallo

I would like to have a high class open source tools for scientific computing and powerful 2D and 3D data visualisation. Therefore I chose python, numpy and scipy as a base. Now I am in search for a visualisation tool. I tried matplotlib and py_opendx with OpenDx. OpenDx seems to me very good but the project py_opendx looks like closed. After py_opendx instalation and subsequent testing I got an error that needs discussion with author or an experienced user. Unfortunately a mail to author returned as undeliverable.

Does anybody now about suitable visualisation tool?

Does anybody have an experience with OpenDx and py_opendx instalation?

Thanks for your response.

fiepye

As another poster pointed out below, VTK is a very strong vis tool. It
is actively supported and has bindings to several languages (C++,
Python, Java, and Tcl at last count). I have used the combination of
python and VTK together to produce many scientific visualizations,
including production quality animations (Usually, I use Python/VTK to
generate isosurfaces or the like, and import the resulting geometry
data into Maya or another high-quality renderer)

One hurdle to overcome is transferring array data from Numeric/Numpy
into VTK. I have a sort of ad-hoc method to do that (mainly for volume
data). If anyone knows of any elegant solution, or a module to ease the
pain, I'd like to hear about it.

If you are working with NetCDF files, you may wish to add
ScientificPython (distinct from SciPy) to your toolset. It has a very
nice NetCDF interface. Unfortunately, it is ancient, and you would have
to install Numeric Python (ancestor to NumPy). However, it is easy to
convert Numeric arrays into Numpy arrays:

-matt
 
F

Fernando Perez

Matteo said:
One hurdle to overcome is transferring array data from Numeric/Numpy
into VTK. I have a sort of ad-hoc method to do that (mainly for volume
data). If anyone knows of any elegant solution, or a module to ease the
pain, I'd like to hear about it.

https://svn.enthought.com/enthought/wiki/TVTK

Much, much, MUCH nicer interface to VTK than the plain bindings that come by
default. And built from the ground up to seamlessly couple numpy with VTK.

Cheers,

f
 
R

Robert Kern

Matteo said:
If you are working with NetCDF files, you may wish to add
ScientificPython (distinct from SciPy) to your toolset. It has a very
nice NetCDF interface. Unfortunately, it is ancient, and you would have
to install Numeric Python (ancestor to NumPy). However, it is easy to
convert Numeric arrays into Numpy arrays:

The NetCDF interface has been ported to numpy and currently resides in the scipy
sandbox.

http://svn.scipy.org/svn/scipy/trunk/Lib/sandbox/netcdf/

--
Robert Kern

"I have come to believe that the whole world is an enigma, a harmless enigma
that is made terrible by our own mad attempt to interpret it as though it had
an underlying truth."
-- Umberto Eco
 
B

bernhard.voigt

A commonly used data analysis framework is root (http://root.cern.ch).
It offers a object oriented C++ framework with all kind of things one
needs for plotting and data visualization. It comes along with PyRoot,
an interface making the root objects available to Python.
Take a look at the root manual for examples, it also contains a section
describing the use of PyRoot.

Cheers! Bernhard
 
P

Paul F. Kunz

Fie Pye said:
Hallo

I would like to have a high class open source tools for scientific computing and powerful 2D and 3D data visualisation. Therefore I chose python, numpy and scipy as a base. Now I am in search for a visualisation tool. I tried matplotlib and py_opendx with OpenDx. OpenDx seems to me very good but the project py_opendx looks like closed. After py_opendx instalation and subsequent testing I got an error that needs discussion with author or an experienced user. Unfortunately a mail to author returned as undeliverable.

Does anybody now about suitable visualisation tool?
Have you looked at HippoDraw?

http://www.slac.stanford.edu/grk/ek/hippodraw
 
D

David J. Braden

Fie said:
Hallo

I would like to have a high class open source tools for scientific computing and powerful 2D and 3D data visualisation. Therefore I chose python, numpy and scipy as a base. Now I am in search for a visualisation tool. I tried matplotlib and py_opendx with OpenDx. OpenDx seems to me very good but the project py_opendx looks like closed. After py_opendx instalation and subsequent testing I got an error that needs discussion with author or an experienced user. Unfortunately a mail to author returned as undeliverable.

Does anybody now about suitable visualisation tool?

Does anybody have an experience with OpenDx and py_opendx instalation?

Thanks for your response.

fiepye

What sort of "scientific computing" and visualization do you have in
mind? I enjoy R for much of my work. See http://www.r-project.org/

Plz let us know what you have discovered, and what you have settled on.

Tchuss,
DaveB
 
C

Carl Friedrich Bolz

A commonly used data analysis framework is root (http://root.cern.ch).
It offers a object oriented C++ framework with all kind of things one
needs for plotting and data visualization. It comes along with PyRoot,
an interface making the root objects available to Python.
Take a look at the root manual for examples, it also contains a section
describing the use of PyRoot.

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.

Cheers,

Carl Friedrich Bolz
 
F

Fabian Braennstroem

Hi,

* Carl Friedrich Bolz said:
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?

Greetings!
Fabian
 
B

bernhard.voigt

I can definitively second that. ROOT is a bit hard to learn but very,
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
 
F

Fabian Braennstroem

Hi Bernhard,

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.

Thanks for your advice!

Greetings!
Fabian
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,995
Messages
2,570,230
Members
46,818
Latest member
Brigette36

Latest Threads

Top