FIX: Better constrain CL for uneven grids #17387
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PR Summary
test_constrainedlayout.py::test_constrained_layout17 is a bit flakey because the constraints are poor. In general, constrained layout needs to be able to handle the situation below where the bottom axes is twice as large as the upper two, but the outer spines must be aligned.
However, it also has to work in the case where there are no inner spines to align:
This case was flakey before because I can only strong constrain the widths of the larger axes to be at least twice as large as the smaller. If there are also spines to line up, then this works fine, but in the second example above, it doesn't constrain the smaller axes from being any size smaller than twice the width of the bigger axes.
The change here is to introduce a 'weak' constraint that is ignored in the first case, and executed in the second case.
This is a follow up to #17306
PR Checklist