GNU bug report logs -
#20888
matplotlib broken
Previous Next
Reported by: Federico Beffa <beffa <at> ieee.org>
Date: Wed, 24 Jun 2015 07:01:03 UTC
Severity: normal
Done: Federico Beffa <beffa <at> ieee.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
I'm afraid I cannot reproduce this. This doesn't mean things just work
for me. It rather means that I'm getting a different error:
$ GI_TYPELIB_PATH=$HOME/.guix-profile/lib/girepository-1.0/ PYTHONPATH=$HOME/.guix-profile/lib/python2.7/site-packages/ python
Python 2.7.6 (default, Jun 16 2015, 17:15:41)
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy as np
>>> import matplotlib.pyplot as plt
(process:1384): Gtk-WARNING **: Locale not supported by C library.
Using the fallback 'C' locale.
>>> t = np.r_[0:5]
>>> plt.plot(t, t)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/gnu/store/3qmjvhsyj5ccwx0d3lcmsirb9a78473v-python2-matplotlib-1.4.2/lib/python2.7/site-packages/matplotlib-1.4.2-py2.7-linux-x86_64.egg/matplotlib/pyplot.py", line 3092, in plot
ax = gca()
File "/gnu/store/3qmjvhsyj5ccwx0d3lcmsirb9a78473v-python2-matplotlib-1.4.2/lib/python2.7/site-packages/matplotlib-1.4.2-py2.7-linux-x86_64.egg/matplotlib/pyplot.py", line 828, in gca
ax = gcf().gca(**kwargs)
File "/gnu/store/3qmjvhsyj5ccwx0d3lcmsirb9a78473v-python2-matplotlib-1.4.2/lib/python2.7/site-packages/matplotlib-1.4.2-py2.7-linux-x86_64.egg/matplotlib/pyplot.py", line 462, in gcf
return figure()
File "/gnu/store/3qmjvhsyj5ccwx0d3lcmsirb9a78473v-python2-matplotlib-1.4.2/lib/python2.7/site-packages/matplotlib-1.4.2-py2.7-linux-x86_64.egg/matplotlib/pyplot.py", line 435, in figure
**kwargs)
File "/gnu/store/3qmjvhsyj5ccwx0d3lcmsirb9a78473v-python2-matplotlib-1.4.2/lib/python2.7/site-packages/matplotlib-1.4.2-py2.7-linux-x86_64.egg/matplotlib/backends/backend_gtk3agg.py", line 110, in new_figure_manager
return new_figure_manager_given_figure(num, thisFig)
File "/gnu/store/3qmjvhsyj5ccwx0d3lcmsirb9a78473v-python2-matplotlib-1.4.2/lib/python2.7/site-packages/matplotlib-1.4.2-py2.7-linux-x86_64.egg/matplotlib/backends/backend_gtk3agg.py", line 117, in new_figure_manager_given_figure
canvas = FigureCanvasGTK3Agg(figure)
File "/gnu/store/3qmjvhsyj5ccwx0d3lcmsirb9a78473v-python2-matplotlib-1.4.2/lib/python2.7/site-packages/matplotlib-1.4.2-py2.7-linux-x86_64.egg/matplotlib/backends/backend_gtk3agg.py", line 25, in __init__
backend_gtk3.FigureCanvasGTK3.__init__(self, figure)
File "/gnu/store/3qmjvhsyj5ccwx0d3lcmsirb9a78473v-python2-matplotlib-1.4.2/lib/python2.7/site-packages/matplotlib-1.4.2-py2.7-linux-x86_64.egg/matplotlib/backends/backend_gtk3.py", line 210, in __init__
self._idle_event_id = GLib.idle_add(self.idle_event)
File "/home/rwurmus/.guix-profile/lib/python2.7/site-packages/gi/types.py", line 44, in function
return info.invoke(*args)
TypeError: Error invoking GLib.idle_add: Unexpected value for argument 'function'
>>>
I don't know what this means.
On the other hand I get along without any errors if I set the backend to
'Agg' before importing pyplot:
>>> import numpy as np
>>> import matplotlib
>>> matplotlib.use('Agg')
>>> import matplotlib.pyplot as plt
>>> t = np.r_[0:5]
>>> plt.plot(t, t)
[<matplotlib.lines.Line2D object at 0x1e2a950>]
>>> ^C
I understand that this could then be used to write the plot to a file.
Do we actually need to use the Gtk+ backend by default?
~~ Ricardo
This bug report was last modified 8 years and 89 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.