Skip to content

ImageGrid bug when using inline backend #12370

Closed
@ezatterin

Description

@ezatterin

Bug report

Bug summary

The ImageGrid class seems to not behave correctly since the upgrade to matplotlib 3.0.0 when the inline backend is used in a Jupyter notebook: the resulting subplots fail to arrange in a grid and are placed on top of eachother. The correct behaviour is reproduced if using the notebook or ipympl backends. Thanks!

Code for reproduction

import matplotlib.pyplot as plt
from mpl_toolkits.axes_grid1 import ImageGrid
import numpy as np

im = np.arange(100)
im.shape = 10, 10

fig = plt.figure(1, (4., 4.))
grid = ImageGrid(fig, 111,  
                 nrows_ncols=(2, 2),  
                 axes_pad=0.1,  
                 )

for i in range(4):
    grid[i].imshow(im)  
    grid[i].set_title('test {0}{0}'.format(i)) 

plt.show()

Actual outcome
image

Expected outcome

image

Matplotlib version

  • Operating system: Debian 9
  • Matplotlib version: 3.0.0
  • Matplotlib backend: inline
  • Python version: 3.5.3
  • Jupyter version (if applicable): 4.4.0
  • Other libraries:

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions