What finally worked for me was to make a local matplotlibrc file containing the directive: backend: TkAgg.
# Within working directory where running python
vim matplotlibrc
# new file via vim, Nano, whatever
backend: TkAgg
This was useful:
import matplotlib
print matplotlib.rcParams['backend']
Other Notes:
I had also installed pyqt using Homebrew (brew install pyqt) and copied (could just move it) into $MyVirtEnv/lib/python2.7/site-packages/ from /usr/local/lib/python2.7/site-packages/PyQt4
But when I
import matplotlib
matplotlib.use('qt4Agg')
import librosa
"Matplotlib qt-based backends require an external PyQt4, PyQt5,\n"
ImportError: Matplotlib qt-based backends require an external PyQt4, PyQt5,
or PySide package to be installed, but it was not found.
Had also tried
pip install pyside
Successfully installed pyside-1.2.4
Same error
>>> import pyside
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named pyside
Also got the following error at some point when trying to reimport matplotlib (i think).
from . import cache
ImportError: cannot import name cache
pip freezeboth in the global and in the virtual environment and compare. Also see if the python version itself is the same. It could also be that matplotlib uses different backends, so also checkmatplotlib.get_backend().