Description
I just taught a very frustrating Python data analysis class where I introduced matplotlib for the first time. Nearly all of the students are using the latest Anaconda on their system, either for windows or mac. For all of them, interactive mode was disabled by default: plotting anything in regular IPython (I'm avoiding Jupyter notebook for various reasons) resulted in a disappointing whole lotta nothing for each and every one of them. Sure, they can do plt.ion()
, or failing that plt.show()
, but why the hassle?
After grappling with where exactly Anaconda stores its particular copy of the matplotlibrc
file, uncommenting the #interactive : False
line and setting it to True
worked for every single student. No back-end issues crept up. This was on a very diverse set of systems. I believe the backends included macosx
and on windows probably Qt5.
Since it works by default, why isn't interactive mode enabled by default in matplotlib? Other than its non-standard location for the matplotlibrc
file, I don't think Anaconda is at fault here. I think Anaconda is simply inheriting the default setting from matplotlib. Everyone in the class was using the Anaconda 5.1 for Python 3.6.
It's sad and embarrassing that in 2018, after installing a huge package that is supposed to be the one-stop solution for beginners on all major platforms, a simple plt.plot([1, 2, 3])
does absolutely nothing by default. It makes MATLAB look snazzy in comparison.