- Published on
Matplotlib in Virtualenv
- Authors
- Name
- James Gardiner
- @_JamesRG
Users of Matplotlib & Virtualenv on macOS have experienced some well documented issues in getting the two to play nicely with Apple's Python framework build. Here's a simple workaround that uses Matplotlib's TkAgg
backend for plotting.
First up, this post assumes that your using Homebrew to install Python alongside the system's framework build. If not, there's no guarentee this will work.
The fix should be as simple as creating a new matplotlibrc
file in Matplotlib's default configuration directory and specifying that the TkAgg backend should be used. On macOS the config directory should be ~/.matplotlib
. You can check by doing the following in a Python shell:
>>> import matplotlib as mpl
>>> mpl.get_configdir()
/Users/username/.matplotlib/
In that directory create a new matplotlibrc
file (if one doesn't already exist) by typing echo "backend: TkAgg" > ~/.matplotlib/matplotlibrc
in a terminal.
In some instances, that will be enough to get Matplotlib working. If this doesn't fix the issue, try pip uninstall matplotlib
then pip install matplotlib
to rebuild any matplotlib binaries.