Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit76afe83

Browse files
authored
FIX constrained_layout w/ hidden axes (#14919)
FIX constrained_layout w/ hidden axes
2 parentsf4515eb +c8ec3c6 commit76afe83

File tree

2 files changed

+18
-1
lines changed

2 files changed

+18
-1
lines changed

‎lib/matplotlib/_constrained_layout.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -272,7 +272,11 @@ def _make_layout_margins(ax, renderer, h_pad, w_pad):
272272
invTransFig=fig.transFigure.inverted().transform_bbox
273273
pos=ax.get_position(original=True)
274274
tightbbox=ax.get_tightbbox(renderer=renderer)
275-
bbox=invTransFig(tightbbox)
275+
iftightbboxisNone:
276+
bbox=pos
277+
else:
278+
bbox=invTransFig(tightbbox)
279+
276280
# this can go wrong:
277281
ifnot (np.isfinite(bbox.width)andnp.isfinite(bbox.height)):
278282
# 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+
deftest_hidden_axes():
393+
# test that if we make an axes not visible that constrained_layout
394+
# still works. Note the axes still takes space in the layout
395+
# (as does a gridspec 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)

[8]ページ先頭

©2009-2025 Movatter.jp