Here are some notes I've taken about using Jupyter Lab and its integrations with matplotlib.
Matplotlib Configuration
There are two mechanisms for having matplotlib render directly inside a Jupyterlab window:
% matplotlib inline
or
% matplotlib widget
The inline
backend generally just works, and what you see is what you will get
when you savefig()
. The widget
backend is interactive, but is extremely
resource hungry, slow, and prone to all manner of problems that I don't like to
deal with. Sadly, the inline
backend has a cryptic configuration interface.
inline backend
In general you can change parameters in $PWD/matplotlibrc
. However, there are
a set of seemingly arbitrary matplotlib configuration parameters which are
not honored.
For example, changing font size requires
$ ipython profile create
$ vim ~/.ipython/profile_default/ipython_config.py
and then explicitly addding
c.InlineBackend.rc.update({"font.size": 16})
There may not be a commented-out version of this in the template created by
ipython profile create
.