Skip to content

axes_grid1 axes have no keyword argument 'bbox_extra_artists' #12634

@astrojuanlu

Description

@astrojuanlu

Bug report

Bug summary

A regression was introduced from v3.0.0 and v3.0.1 that breaks axes_grid1 with a TypeError: get_tightbbox() got an unexpected keyword argument 'bbox_extra_artists'.

Code for reproduction

import matplotlib.pyplot as plt
plt.ion()

from mpl_toolkits.axes_grid1.inset_locator import zoomed_inset_axes
from mpl_toolkits.axes_grid1.inset_locator import mark_inset

fig, ax = plt.subplots(figsize=(8, 6))

l, = ax.plot([1, 2, 3], [0, 1, 0])

ax_zoom = zoomed_inset_axes(ax, 4)
ax_zoom.plot([1, 2, 3], [0, 1, 0])

mark_inset(ax, ax_zoom, loc1=1, loc2=3, fc="none", ec='0.3')

fig.savefig("/tmp/tmp.png")

Actual outcome

TypeError                                 Traceback (most recent call last)
~/.miniconda36/envs/poliastro37/lib/python3.7/site-packages/IPython/core/formatters.py in __call__(self, obj)
    339                 pass
    340             else:
--> 341                 return printer(obj)
    342             # Finally look for special method names
    343             method = get_real_method(obj, self.print_method)

~/.miniconda36/envs/poliastro37/lib/python3.7/site-packages/IPython/core/pylabtools.py in <lambda>(fig)
    239 
    240     if 'png' in formats:
--> 241         png_formatter.for_type(Figure, lambda fig: print_figure(fig, 'png', **kwargs))
    242     if 'retina' in formats or 'png2x' in formats:
    243         png_formatter.for_type(Figure, lambda fig: retina_figure(fig, **kwargs))

~/.miniconda36/envs/poliastro37/lib/python3.7/site-packages/IPython/core/pylabtools.py in print_figure(fig, fmt, bbox_inches, **kwargs)
    123 
    124     bytes_io = BytesIO()
--> 125     fig.canvas.print_figure(bytes_io, **kw)
    126     data = bytes_io.getvalue()
    127     if fmt == 'svg':

~/.miniconda36/envs/poliastro37/lib/python3.7/site-packages/matplotlib/backend_bases.py in print_figure(self, filename, dpi, facecolor, edgecolor, orientation, format, bbox_inches, **kwargs)
   2051                     bbox_artists = kwargs.pop("bbox_extra_artists", None)
   2052                     bbox_inches = self.figure.get_tightbbox(renderer,
-> 2053                             bbox_extra_artists=bbox_artists)
   2054                     pad = kwargs.pop("pad_inches", None)
   2055                     if pad is None:

~/.miniconda36/envs/poliastro37/lib/python3.7/site-packages/matplotlib/figure.py in get_tightbbox(self, renderer, bbox_extra_artists)
   2274         bb.extend(
   2275             ax.get_tightbbox(renderer, bbox_extra_artists=bbox_extra_artists)
-> 2276             for ax in self.axes if ax.get_visible())
   2277 
   2278         if len(bb) == 0:

~/.miniconda36/envs/poliastro37/lib/python3.7/site-packages/matplotlib/figure.py in <genexpr>(.0)
   2274         bb.extend(
   2275             ax.get_tightbbox(renderer, bbox_extra_artists=bbox_extra_artists)
-> 2276             for ax in self.axes if ax.get_visible())
   2277 
   2278         if len(bb) == 0:

TypeError: get_tightbbox() got an unexpected keyword argument 'bbox_extra_artists'

<Figure size 576x432 with 2 Axes>

Expected outcome

This worked in version v3.0.0.

Matplotlib version

  • Operating system: Linux Mint (latest)
  • Matplotlib version: v3.0.1
  • Matplotlib backend (print(matplotlib.get_backend())): module://ipykernel.pylab.backend_inline
  • Python version: 3.7.0
  • Jupyter version (if applicable): 5.7.0 (notebook)
  • Other libraries:

Installed using pip.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions