mayavi2 vs paraview3

428 views
Skip to first unread message

Ondrej Certik

unread,
Feb 8, 2008, 7:24:52 AM2/8/08
to sy...@googlegroups.com
On Feb 8, 2008 11:26 AM, Robert Cimrman <cimr...@ntc.zcu.cz> wrote:
>
> Gael Varoquaux wrote:
> > On Thu, Feb 07, 2008 at 10:00:02PM +0100, Ondrej Certik wrote:
> >> but recently Robert Cimrman, suggested paraview3 to me and that's much
> >> much better.
> >
> > Just a data point: paraview is using the same library than Mayavi2 for do
> > the visualization and rendering (VTK). However, IMHO, there application
> > is much less reusable, and much harder to integrate with sympy than
> > Mayavi2. They do have more feature though.
>
> Just a historical point: for my needs = using some program that is easy
> to install to view VTK files and manipulate them interactively = is
> paraview perfect, and it was the first (and only) free VTK viewer that I
> managed to install without much effort. Then it was just a matter of
> inertia.

Paraview binary deb is 70MB, so that's quite a beast. But it just
works. These are my personal reasosns why I don't use mayavi2:

* searching for mayavi2 in google doesn't give me it's webpage in the
first 5 links, I don't see a single source of upstream documentation,
downloads etc. I see all of it scattered among many places.
* it used to be an extreme pain to install, but this has improved a
lot with the deb packages Gael, Varun, I and others helped to create
* it asks me if I really wont to exit mayavi2 all the time -- this really sucks.
* mayavi2 has no internal help/documentation how to do things
* I tried the full screen, then hit "q" and got segfault in python. I
reported the bug in Debian:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=464692
* I tried streamlines, but I got some internal exception
* I tried to do the same as I do in paraview in mayavi2 and I managed
to got some other internal exception in mayvi2. But I didn't manage to
reproduce it, so no bugreport. To be fair, I also managed to kill
paraview once, but only once. :)
* paraview has nice icons in the program :)
* paraview looks more professional.

Those are all little things, but they add up.

Both paraview and mayavi2 is BSD licensed. It's true that paraview
also depends on QT.
Both can be scripted from python.

What I really like on mayavi2, is that the cut plane is showing the
results immediately (interactively) when dragging the plane. I didn't
manage to do the same in paraview (I need to hit apply all the time in
there, which sucks).

I definitely see a lot of potential in mayavi2, especially because I
really like small tools doing one job and doing it well. But the above
points are quite important for me.

>
> > Anyway, I am willing to help adapting Mayavi2 to your needs if you guys
> > want a VTK-based solution.
> On the other hand, concerning integration into sympy or other Python
> software (silently thinking about my own), I am side-less. :) And I
> would bet that Ondrej would grab any working solution.

Well, definitely mayavi2 or similar things should stay as a separate
package, also it's related to sfepy, not sympy imho. But all the
packages like numpy, scipy, sympy, mayavi, matplotlib, sfepy etc
should be able to cooperate nicely with each other. All of them are
BSDed and imho follow the same spirit - do scientific computing in
python easier and to share and reuse each others work.

Ondrej

Alan Bromborsky

unread,
Feb 8, 2008, 8:13:42 AM2/8/08
to sy...@googlegroups.com
I installed the mayavi (1.5-4) from the ubuntu repository and tried to
run a python script.
The program told me it was not compiled with -fPIC so could not run
python scripts. I have been unable to install it from scratch with the
proper switches.

Ondrej Certik

unread,
Feb 8, 2008, 8:40:45 AM2/8/08
to sy...@googlegroups.com
> I installed the mayavi (1.5-4) from the ubuntu repository and tried to
> run a python script.
> The program told me it was not compiled with -fPIC so could not run
> python scripts. I have been unable to install it from scratch with the
> proper switches.

This seems to be working for me in Debian. Please report the bug in
the Ubuntu bug tracker.
Ondrej

Gael Varoquaux

unread,
Feb 9, 2008, 12:23:13 PM2/9/08
to sy...@googlegroups.com
Hi Ondrej,

Thanks for your comments about Mayavi2, you make good points. All in all
I absolutely agree we need to address the problems you underline. A few
comment.

On Fri, Feb 08, 2008 at 01:24:52PM +0100, Ondrej Certik wrote:
> Paraview binary deb is 70MB, so that's quite a beast. But it just
> works. These are my personal reasosns why I don't use mayavi2:

> * searching for mayavi2 in google doesn't give me it's webpage in the
> first 5 links, I don't see a single source of upstream documentation,
> downloads etc. I see all of it scattered among many places.

Yes, this is a big problem. We have a search engine optimisation problem
because we use a trac wiki as a main page. We have been thinking over the
different possibilities and there will be action on this side. When is
hard to judge, because we want to address this problem for the whole
enthought tool suite.

> * it used to be an extreme pain to install,

Actually, I beg your pardon, this is not quite true. You wanted to not
use setuptools, you wanted to grab a tarball. In this condition, it was a
pain to install. But, provided you have all the dependencies, using
setuptools it was, and still is trivial. You do have to learn a new
system (easy_install/setuptools) rather than use the more commonly used
./configure/make.

> but this has improved a lot with the deb packages Gael, Varun, I and
> others helped to create

+1 ! :->

> * it asks me if I really wont to exit mayavi2 all the time -- this
> really sucks.

Come on! Yes it sucks, but it is easy to change, just go to preferences.

> * mayavi2 has no internal help/documentation how to do things

Yes, this is a very big problem. We have worked on that. On the new
version that is coming out in a few week, there is a pdf manual, and a
menu entry that opens an html version of this manual in a webbrowser.
Currently the html is nicer to read on the screen than the pdf (I need to
work a bit more on the LaTeX code generation), you can check it out
doing:

svn co https://svn.enthought.com/svn/enthought/Mayavi/branches/enthought.mayavi_2.1.0/docs/user_guide/html

> * I tried the full screen, then hit "q" and got segfault in python. I
> reported the bug in Debian:
> http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=464692

We didn't get the bug report upstream. But it still sucks pretty badly.
Especially since I can reproduce the bug. I add it to our trac.

> * I tried streamlines, but I got some internal exception

Hum, if you have more info I would be interested. Be aware that you where
using an alpha version, we are only right now doing a real release. OK, I
do understand that this actually doesn't play in our favour, using alpha
software is not good.

> * paraview has nice icons in the program :)

Fixed !! Look at the screenshots on http://gael-varoquaux.info/blog/ :->.

> * paraview looks more professional.

:->. Our aim is not to compete with Paraview, but to provide something
modular and fully reusable ( see my blog, especially
http://gael-varoquaux.info/blog/?p=14 and
http://gael-varoquaux.info/blog/?p=3 ). I especially like the use from
ipython.

> Those are all little things, but they add up.

Yes. I think your points are all valid. We have clearly addressed a few
of them in the release coming soon. Some are harder to address with
limited manpower.

> Well, definitely mayavi2 or similar things should stay as a separate
> package, also it's related to sfepy, not sympy imho. But all the
> packages like numpy, scipy, sympy, mayavi, matplotlib, sfepy etc
> should be able to cooperate nicely with each other. All of them are
> BSDed and imho follow the same spirit - do scientific computing in
> python easier and to share and reuse each others work.

Yes, and that was the point of my original post. If you want us to modify
details or add feature to Mayavi2 to be able to integrate it better with
sympy, just ask. I think this is something possible with Mayavi2 and not
with Paraview. I think that the great thing about Mayavi2 is the reuse.

Cheers,

Gaël

Ondrej Certik

unread,
Feb 9, 2008, 2:07:33 PM2/9/08
to sy...@googlegroups.com, Prabhu Ramachandran
Hi Gael,

with Prabhu (anothe mayavi2 developer) permission, I am also posting
here his reply, together with mine.
Let me just stress at the beginning, that I am expressing my own
opinions and wishes, I am not saying all of this should be in mayavi2,
since you should put only features, that most people want, in it.
Nevertheless, when deciding which tool to use, I am making my decision
based on my own preferences, not the "majority preference".

> On Fri, Feb 08, 2008 at 01:24:52PM +0100, Ondrej Certik wrote:
> > Paraview binary deb is 70MB, so that's quite a beast. But it just
> > works. These are my personal reasosns why I don't use mayavi2:
>
> > * searching for mayavi2 in google doesn't give me it's webpage in the
> > first 5 links, I don't see a single source of upstream documentation,
> > downloads etc. I see all of it scattered among many places.
>
> Yes, this is a big problem. We have a search engine optimisation problem
> because we use a trac wiki as a main page. We have been thinking over the
> different possibilities and there will be action on this side. When is
> hard to judge, because we want to address this problem for the whole
> enthought tool suite.

Prabhu:


3. The scattering of the docs is slowly changing and I think we have
something better.


>
> > * it used to be an extreme pain to install,
>
> Actually, I beg your pardon, this is not quite true. You wanted to not
> use setuptools, you wanted to grab a tarball. In this condition, it was a
> pain to install. But, provided you have all the dependencies, using
> setuptools it was, and still is trivial. You do have to learn a new
> system (easy_install/setuptools) rather than use the more commonly used
> ./configure/make.

Prabhu:

7. I think installation is much easier now but still a long way from
what mayavi1 used to be.

Me:

I also beg your pardon, but I want to use traditonal installation
mechanisms, at least until everyone else moves to something new, which
is problem free.
For me, a problem free installation is that, for which I can easily
create a Debian (pick your favourite distribution) package. This was
not possible with setuptools. Anyway, this is fixed now, but this was
a huge problem - I am sure I wasn't the only one.


>
> > but this has improved a lot with the deb packages Gael, Varun, I and
> > others helped to create
>
> +1 ! :->
>
> > * it asks me if I really wont to exit mayavi2 all the time -- this
> > really sucks.
>
> Come on! Yes it sucks, but it is easy to change, just go to preferences.

Prabhu:

2. As regards it asking when you quit, that can be turned off
Tools->Preferences on the UI select Workbench->promt on exit. I could
change the envisage default in mayavi but that is a bit of a hack.

Me:

My apology, I didn't see how to turn it off. Still this should be default imho.

>
> > * mayavi2 has no internal help/documentation how to do things
>
> Yes, this is a very big problem. We have worked on that. On the new
> version that is coming out in a few week, there is a pdf manual, and a
> menu entry that opens an html version of this manual in a webbrowser.
> Currently the html is nicer to read on the screen than the pdf (I need to
> work a bit more on the LaTeX code generation), you can check it out
> doing:
>
> svn co https://svn.enthought.com/svn/enthought/Mayavi/branches/enthought.mayavi_2.1.0/docs/user_guide/html

Prabhu:

4. The last release had a 40 page user guide. The next will have 60-70
page one and that will also be accessible from the application itself.


>
> > * I tried the full screen, then hit "q" and got segfault in python. I
> > reported the bug in Debian:
> > http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=464692
>
> We didn't get the bug report upstream. But it still sucks pretty badly.
> Especially since I can reproduce the bug. I add it to our trac.

Prabhu:

1. The full screen issue looks like a VTK + wxPython issue and it
changes with every bloody distribution and graphics combination. It
used to work for me and now crashes again. It is a pain. It seems to
work OK with the Qt version though. I'll try and take a look.

>
> > * I tried streamlines, but I got some internal exception
>
> Hum, if you have more info I would be interested. Be aware that you where
> using an alpha version, we are only right now doing a real release. OK, I
> do understand that this actually doesn't play in our favour, using alpha
> software is not good.

I try to report all bugs, if I have enough time. But I didn't manage
to reproduce this one.

>
> > * paraview has nice icons in the program :)
>
> Fixed !! Look at the screenshots on http://gael-varoquaux.info/blog/ :->.

Prabhu:

6. Icons are eye candy to me but will come eventually thanks to Gael.

Me:

Yes, the icons that are in are good. I meant the icons in the menu,
that were missing (at least in Debian they are still missing).

>
> > * paraview looks more professional.
>
> :->. Our aim is not to compete with Paraview, but to provide something
> modular and fully reusable ( see my blog, especially
> http://gael-varoquaux.info/blog/?p=14 and
> http://gael-varoquaux.info/blog/?p=3 ). I especially like the use from
> ipython.
>
> > Those are all little things, but they add up.
>
> Yes. I think your points are all valid. We have clearly addressed a few
> of them in the release coming soon. Some are harder to address with
> limited manpower.
>
> > Well, definitely mayavi2 or similar things should stay as a separate
> > package, also it's related to sfepy, not sympy imho. But all the
> > packages like numpy, scipy, sympy, mayavi, matplotlib, sfepy etc
> > should be able to cooperate nicely with each other. All of them are
> > BSDed and imho follow the same spirit - do scientific computing in
> > python easier and to share and reuse each others work.
>
> Yes, and that was the point of my original post. If you want us to modify
> details or add feature to Mayavi2 to be able to integrate it better with
> sympy, just ask. I think this is something possible with Mayavi2 and not
> with Paraview. I think that the great thing about Mayavi2 is the reuse.

Prabhu:

The real big issue is that mayavi integrates much better with python
than anything else. Numpy data support, mlab and embeddability are also
big features.

Me:

There should be a single page just for a mayavi2, with just issues for
mayavi2 and especially a mailinglist for mayavi2 imho.

What is your preferred way to receive bug reports and suggestions? On
the enthought mailinglist?

Ondrej

Gael Varoquaux

unread,
Feb 9, 2008, 6:30:02 PM2/9/08
to sy...@googlegroups.com
On Sat, Feb 09, 2008 at 08:07:33PM +0100, Ondrej Certik wrote:
> > > * it used to be an extreme pain to install,

> > Actually, I beg your pardon, this is not quite true. You wanted to not
> > use setuptools, you wanted to grab a tarball. In this condition, it was a
> > pain to install. But, provided you have all the dependencies, using
> > setuptools it was, and still is trivial. You do have to learn a new
> > system (easy_install/setuptools) rather than use the more commonly used
> > ./configure/make.

> Prabhu:

> 7. I think installation is much easier now but still a long way from
> what mayavi1 used to be.

> Me:

> I also beg your pardon, but I want to use traditonal installation
> mechanisms, at least until everyone else moves to something new, which
> is problem free.

Zhqt is stqndqrd for you may not be standard for others. You, and I, and
Prabhu use Debian-based systems. apt-get/configure+make is standard. 90%
of our users use windows. tarballs with makefiles do not work for these
people, whereas Python scripts (eg easy_install) work.

> 2. As regards it asking when you quit, that can be turned off
> Tools->Preferences on the UI select Workbench->promt on exit. I could
> change the envisage default in mayavi but that is a bit of a hack.

> Me:

> My apology, I didn't see how to turn it off. Still this should be default imho.

I agree with the default. I'll check if we can change that without
interfering with other projects.

> > > * paraview has nice icons in the program :)

> > Fixed !! Look at the screenshots on http://gael-varoquaux.info/blog/ :->.

> Prabhu:

> 6. Icons are eye candy to me but will come eventually thanks to Gael.

> Me:

> Yes, the icons that are in are good. I meant the icons in the menu,
> that were missing (at least in Debian they are still missing).

OK, well they will still go missing. This is a lot of work (due to
lacking support from the framework we use) for IMHO little user benefit.
I have other things on my agenda/

> There should be a single page just for a mayavi2, with just issues for
> mayavi2 and especially a mailinglist for mayavi2 imho.

+1 for the page. I really want to get this sorted. -100 for the mailing
list. Many people ask Mayavi questions that are in fact related to
traits, wxPython or Python it self, and some people on the enthought-dev
mailing-list answer these questions much quicker than we could do.
Moreover, they help with installation uses, windows issues (neither
Prabhu nor I use windows), and sometimes purely Mayavi issues. I really
do not want to move away from the enthought-dev mailing list. We can too
much by having intelligent and helpful people on the mailing list.

> What is your preferred way to receive bug reports and suggestions? On
> the enthought mailinglist?

Now this is extremely standard. We use trac. The prefered way for
feedback are tracs tickets. It can be good to discuss these tickets on
the enthought-dev mailing list before filling them in, that way the
background behind the ticket is better understood, but the issue tracker
is trac's, like many other projects.

Gaël

Ondrej Certik

unread,
Feb 9, 2008, 6:54:30 PM2/9/08
to sy...@googlegroups.com
> > I also beg your pardon, but I want to use traditonal installation
> > mechanisms, at least until everyone else moves to something new, which
> > is problem free.
>
> Zhqt is stqndqrd for you may not be standard for others. You, and I, and
> Prabhu use Debian-based systems. apt-get/configure+make is standard. 90%
> of our users use windows. tarballs with makefiles do not work for these
> people, whereas Python scripts (eg easy_install) work.

Agree. As I said I am speaking for myself only here. I am glad it's in
Debian now, so that I don't have to touch setuptools anymore. I know
you like it, but I don't.

> > Yes, the icons that are in are good. I meant the icons in the menu,
> > that were missing (at least in Debian they are still missing).
>
> OK, well they will still go missing. This is a lot of work (due to
> lacking support from the framework we use) for IMHO little user benefit.
> I have other things on my agenda/

I was just saying what I like. :)

> > There should be a single page just for a mayavi2, with just issues for
> > mayavi2 and especially a mailinglist for mayavi2 imho.
>
> +1 for the page. I really want to get this sorted. -100 for the mailing
> list. Many people ask Mayavi questions that are in fact related to
> traits, wxPython or Python it self, and some people on the enthought-dev
> mailing-list answer these questions much quicker than we could do.
> Moreover, they help with installation uses, windows issues (neither
> Prabhu nor I use windows), and sometimes purely Mayavi issues. I really
> do not want to move away from the enthought-dev mailing list. We can too
> much by having intelligent and helpful people on the mailing list.

Right.

> > What is your preferred way to receive bug reports and suggestions? On
> > the enthought mailinglist?
>
> Now this is extremely standard. We use trac. The prefered way for
> feedback are tracs tickets. It can be good to discuss these tickets on
> the enthought-dev mailing list before filling them in, that way the
> background behind the ticket is better understood, but the issue tracker
> is trac's, like many other projects.

Thanks for the explanation. So I'll be asking future questions on the
enthought mailing list.

One more thing - when I started mayavi2 for the first time, even up
until recently, I wasn't sure, how to work with it, without reading
tons of documentation (which even didn't exist:), but when starting
paraview, the interface kind of guides me what to do. So I learned how
to use paraview quite easily, and now, with this knowledge, I just
found out yesterday that it's very easy to use mayavi2 too. So I'll
try to use it from time to time instead of paraview and I'll try to
report all bugs/feedback.

Ondrej

Gael Varoquaux

unread,
Feb 10, 2008, 12:31:33 PM2/10/08
to sy...@googlegroups.com
On Sun, Feb 10, 2008 at 12:54:30AM +0100, Ondrej Certik wrote:
> One more thing - when I started mayavi2 for the first time, even up
> until recently, I wasn't sure, how to work with it, without reading
> tons of documentation (which even didn't exist:), but when starting
> paraview, the interface kind of guides me what to do.

+100 on that. Prabhu and I have a plan to add this kind of guiding, but
we need to build an abstraction on menus and dialog, to be able to
generate this interface. It is planned though, and I tink it will really
add value to Mayavi2. I expect to take approximately 6 months to get this
new interface fully mature. By then I expect Mayavi2 to become really
nice to use.

Gaël

Alan Bromborsky

unread,
Feb 10, 2008, 12:47:41 PM2/10/08
to sy...@googlegroups.com
I tried to install Mayavi2 on my machine from the sources but got compile
errors on several of the required packages. My problem is that I am running
kubuntu on an amd64. A lot of things that just install on a 386 system
just don't
on my sytem, whereas paraview is in the amd64 repository for kubuntu (I
can't install
most of the enthought packages either)!!!!!!!!!!!

Gael Varoquaux

unread,
Feb 10, 2008, 1:41:53 PM2/10/08
to sy...@googlegroups.com
On Sun, Feb 10, 2008 at 12:47:41PM -0500, Alan Bromborsky wrote:
> I tried to install Mayavi2 on my machine from the sources but got compile
> errors on several of the required packages. My problem is that I am running
> kubuntu on an amd64. A lot of things that just install on a 386 system
> just don't
> on my sytem, whereas paraview is in the amd64 repository for kubuntu (I
> can't install
> most of the enthought packages either)!!!!!!!!!!!

Hum, my desktop is an amd64 ubuntu box. I compile all this from svn, but
it works just fine.

How did you try installing? This needs to be fixed.

Cheers,

Gaël

Gael Varoquaux

unread,
Feb 10, 2008, 1:45:09 PM2/10/08
to sy...@googlegroups.com
On Sun, Feb 10, 2008 at 07:41:53PM +0100, Gael Varoquaux wrote:
> How did you try installing? This needs to be fixed.

I was rumbling these installation problems over, and I decided that in a
couple of weeks, when we release the current version of Mayavi2, I would
use either launchpad or opensuse's build system to generate native
packages for all major distros. This should solve the problem.

Gaël

Alan Bromborsky

unread,
Feb 10, 2008, 2:03:33 PM2/10/08
to sy...@googlegroups.com
This time I followed the eggs instructions carefully and all went well!!!!!
I had been missing some of the required packages!!!!

Alan Bromborsky

unread,
Feb 10, 2008, 6:06:52 PM2/10/08
to sy...@googlegroups.com
Is it correct to state that Mayavi2 will provide vector hardcopy (.ps,
etc.) and Paraview will not?

Gael Varoquaux

unread,
Feb 10, 2008, 6:09:36 PM2/10/08
to sy...@googlegroups.com
On Sun, Feb 10, 2008 at 06:06:52PM -0500, Alan Bromborsky wrote:
> Is it correct to state that Mayavi2 will provide vector hardcopy (.ps,
> etc.) and Paraview will not?

I do not know about Paraview. Mayavi2 will indeed, but my experience is
that with complex visualization the resulting pdf or ps is terribly heavy
and does not render well. Appart for really simple things, you are
advised to use raster output.

Cheers,

Gaël

Reply all
Reply to author
Forward
0 new messages