rc_configurator.context(*args, mode=0, **kwargs)[source]

Temporarily modifies settings in a with...as block, used by ProPlot internally but may also be useful for power users.

This function was invented to prevent successive calls to format from constantly looking up and re-applying unchanged settings. Testing showed that these gratuitous rcParams lookups and artist updates increased runtime by seconds, even for relatively simple plots.

  • *args – Dictionaries of setting names and values.

  • **kwargs – Setting names and values passed as keyword arguments.

Other Parameters

mode ({0,1,2}, optional) – The __getitem__ mode. Dictates the behavior of the rc object within a with...as block when settings are requested with e.g. rc.setting. If you are using context manually, the mode is automatically set to 0 – other input is ignored. Internally, ProPlot uses all of the three available modes.

  1. All settings (rcParams, rcParamsLong, and rcParamsShort) are returned, whether or not context has changed them.

  2. Unchanged rcParams return None. rcParamsLong and rcParamsShort are returned whether or not context has changed them. This is used in the __init__ call to format. When a setting lookup returns None, format does not apply it.

  3. All unchanged settings return None. This is used during user calls to format.


>>> import proplot as plot
>>> with plot.rc.context(linewidth=2, ticklen=5):
...     f, ax = plot.subplots()
...     ax.plot(data)