hi, as the original backtrace indicates, the svg problem is related to the gtkagg backend (which is default), in particular to the window icon:
/usr/lib/pymodules/python2.5/matplotlib/backends/backend_gtk.pyc in __init__(self, canvas, num) 441 self.window.set_title("Figure %d" % num) 442 if (window_icon): --> 443 self.window.set_icon_from_file(window_icon) 444 445 self.vbox = gtk.VBox() GError: Couldn't recognize the image file format for file '/usr/share/matplotlib/mpl-data/images/matplotlib.svg' (see the original post for full backtrace) > I tried to replicate this problem in a clean chroot and only maplotlib > installed (and its dependencies of course) but the svg file is > generated correctly *without* any svg library installed. > > The code I used is: > > import matplotlib as mpl > mpl.use('SVG') > import matplotlib.pyplot as plt > plt.figure() > plt.plot([1,2]) > plt.savefig('test.svg') > python -c "import matplotlib as mpl ; print mpl.__version__" > 0.99.0 same version as i have. The problem arises when GTK creates a window and is told to load an icon in SVG format for which GTK needs a gdk-pixbuf loader for SVG. This is provided by librsvg2-common. When using the matplotlib svg backend, no window will be created at all. When using the qt4agg backend, the window is provided by QT instead of GTK, and the error also won't occur. To reproduce this problem, deinstall librsvg2-common and use the following python code: import matplotlib as mpl # explicitly set gtkagg as backend. usually it is default mpl.use('gtkagg') import matplotlib.pyplot as plt plt.figure() as librsvg2-common is amongst the dependencies of gnome you usually won't see this error if you have gnome installed, which is default for debian. -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org