[Matplotlib-users] True 3D plotting with matplotlib

clemens.loschnauer at cantab.net clemens.loschnauer at cantab.net
Sun Jun 3 11:54:29 EDT 2018


Hi everyone,

I have got a question with regards to the 3D plotting capabilites of
matplotlib: Are there any plans/ongoing projects to make matplotlib (or
its mplot3d submodule) suitable for complex 3D plotting?
In particular, I am interested in plotting of geometric objects and
surfaces and exporting these to vector graphics formats. I have done some
research online and while there are some packages out there for 3D
visualisation of data, all of them only export to raster graphics.
The only program that I have come across that supports this is
Mathematica, which is commercial. I believe that the option of producing
publication-quality vector graphics for complex 3D scenes as might be
desired in a scientific application is a feature that is currently missing
in matplotlib.
When I say high quality I have something like the 3D plots of the
tikz/pgfplots packages in latex in mind, although again these do not
support complex 3D scenes. I know there is mayavi, but I feel this does
not offer the same quality for a scientific visualisation. Besides, it is
a separate package and not part of matplotlib.
An example of a visualisation that I want to achieve is the following:
Plot a function of two variables as a 3D surface and then add a sphere
that is tangent to the surface at some point. Then allow different camera
angles with correct occlusion of hidden parts and varying levels of
transparency. Add lighting and shading and export this as a vector graphic
to a pdf file.

Are there any plans to make something like this possible in matplotlib? If
not, does anyone have hints as to what would be required to program this?



More information about the Matplotlib-users mailing list