Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 1911cc8

Browse files
committed
TST: test hidden axes
1 parent 0058693 commit 1911cc8

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

lib/matplotlib/_constrained_layout.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -276,7 +276,7 @@ def _make_layout_margins(ax, renderer, h_pad, w_pad):
276276
bbox = pos
277277
else:
278278
bbox = invTransFig(tightbbox)
279-
279+
280280
# this can go wrong:
281281
if not (np.isfinite(bbox.width) and np.isfinite(bbox.height)):
282282
# just abort, this is likely a bad set of co-ordinates that

lib/matplotlib/tests/test_constrainedlayout.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -387,3 +387,16 @@ def test_colorbar_location():
387387
fig.colorbar(pcm, ax=axs[-2, 3:], shrink=0.5, location='top')
388388
fig.colorbar(pcm, ax=axs[0, 0], shrink=0.5, location='left')
389389
fig.colorbar(pcm, ax=axs[1:3, 2], shrink=0.5, location='right')
390+
391+
392+
def test_hidden_axes():
393+
# test that if we make an axes not vidsdible that constrained_layout
394+
# still works. Note the axes still takes space in the layout
395+
# (as does a gridspect slot that is empty)
396+
fig, axs = plt.subplots(2, 2, constrained_layout=True)
397+
axs[0, 1].set_visible(False)
398+
fig.canvas.draw()
399+
extents1 = np.copy(axs[0, 0].get_position().extents)
400+
401+
np.testing.assert_allclose(extents1,
402+
[0.045552, 0.548288, 0.47319, 0.982638], rtol=1e-5)

0 commit comments

Comments
 (0)