Mi instalación de Python en OS X es a través de homebrew. Luego agrego el software de Python usando pip. Recientemente actualicé matplotlib de la versión 1.4.3 a la 2.1.0 mediante pip install matplotlib --upgrade
y ahora matplotlib me da este error cuando intento hacer un gráfico básico:
In [1]: plt.plot(np.arange(10))
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-1-a81699eb47e8> in <module>()
----> 1 plt.plot(np.arange(10))
/usr/local/lib/python2.7/site-packages/matplotlib/pyplot.pyc in plot(*args, **kwargs)
3227 @_autogen_docstring(Axes.plot)
3228 def plot(*args, **kwargs):
-> 3229 ax = gca()
3230 # Deprecated: allow callers to override the hold state
3231 # by passing hold=True|False
/usr/local/lib/python2.7/site-packages/matplotlib/pyplot.pyc in gca(**kwargs)
957 matplotlib.figure.Figure.gca : The figure's gca method.
958 """
--> 959 return gcf().gca(**kwargs)
960
961 # More ways of creating axes:
/usr/local/lib/python2.7/site-packages/matplotlib/pyplot.pyc in gcf()
586 return figManager.canvas.figure
587 else:
--> 588 return figure()
589
590
/usr/local/lib/python2.7/site-packages/matplotlib/pyplot.pyc in figure(num, figsize, dpi, facecolor, edgecolor, frameon, FigureClass, clear, **kwargs)
554 # FigureManager base class.
555 if matplotlib.is_interactive():
--> 556 draw_if_interactive()
557
558 if _INSTALL_FIG_OBSERVER:
/usr/local/lib/python2.7/site-packages/matplotlib/backend_bases.pyc in draw_if_interactive(cls)
183 manager = Gcf.get_active()
184 if manager:
--> 185 cls.trigger_manager_draw(manager)
186
187 @classmethod
TypeError: unbound method trigger_manager_draw() must be called with _BackendMac instance as first argument (got FigureManagerMac instance instead)
No estoy seguro de cómo diagnosticar esto. Sin embargo, tengo un matplotlib de Python 3 que funciona.
¿Es esto realmente un error dentro de la versión 2.1.0 de matplotlib?
0 votos
Tengo exactamente el mismo problema desde que actualicé a la versión actual de matplotlib a través de pip (MacOSX Sierra, Python 2.7).