Skip to content

Update figure.py #29277

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open

Update figure.py #29277

wants to merge 1 commit into from

Conversation

Thierno88
Copy link

This PR introduces a new method, set_figratio, to the matplotlib.figure.Figure class. The purpose of this method is to allow users to set the figure's height and width while optionally preserving the aspect ratio between them. It also supports the ability to use the default figure size values defined in rcParams when one of the dimensions (width or height) is None. This provides a more convenient and flexible approach for adjusting the figure's size based on either fixed dimensions or aspect ratios, addressing a common need for publication-style figure formatting.

Changes made:
Introduced set_figratio to adjust the figure's width and height or aspect ratio.
Added support for None in the figsize parameter, automatically using the default size from rcParams when needed.
Simplified the figure resizing logic based on aspect ratios, ensuring better compatibility with user-defined figure sizes.
Motivation:
This feature was requested in relation to issue #28758, where users wanted the ability to specify a width or height and automatically adjust the other dimension based on a given aspect ratio. This method aims to streamline that process and allow for a simpler workflow when creating figures with publication-specific sizes.

PR checklist
"closes #28758" is in the body of the PR description to link the related issue
new and changed code is tested
Plotting related features are demonstrated in an example
New Features and API Changes are noted with a directive and release note
Documentation complies with general and docstring guidelines

Creating set_figratio
@tacaswell
Copy link
Member

This should be coordinated with #29262 which is implementing the same feature.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Waiting for author
Development

Successfully merging this pull request may close these issues.

[ENH]: Specifying figure size based on width and ratio/aspect
2 participants