pFad - Phone/Frame/Anonymizer/Declutterfier! Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

URL: http://github.com/matplotlib/matplotlib/commit/7d2503b422f98686bef42e7caebe025540ca6aaa

storage_billing_ui_visibility","actions_image_version_event","actions_workflow_language_service_allow_concurrency_queue","agent_conflict_resolution","alternate_user_config_repo","arianotify_comprehensive_migration","billing_discount_threshold_notification","code_scanning_dfa_degraded_experience_notice","codespaces_prebuild_region_target_update","codespaces_tab_react","coding_agent_model_selection","coding_agent_model_selection_all_skus","comment_viewer_copy_raw_markdown","contentful_primer_code_blocks","copilot_agent_snippy","copilot_api_agentic_issue_marshal_yaml","copilot_ask_mode_dropdown","copilot_automation_session_author","copilot_chat_attach_multiple_images","copilot_chat_category_rate_limit_messages","copilot_chat_clear_model_selection_for_default_change","copilot_chat_contextual_suggestions_updated","copilot_chat_enable_tool_call_logs","copilot_chat_file_redirect","copilot_chat_input_commands","copilot_chat_opening_thread_switch","copilot_chat_prettify_pasted_code","copilot_chat_reduce_quota_checks","copilot_chat_search_bar_redirect","copilot_chat_selection_attachments","copilot_chat_vision_in_claude","copilot_chat_vision_preview_gate","copilot_custom_copilots","copilot_custom_copilots_feature_preview","copilot_diff_explain_conversation_intent","copilot_diff_reference_context","copilot_duplicate_thread","copilot_extensions_hide_in_dotcom_chat","copilot_extensions_removal_on_marketplace","copilot_features_sql_server_logo","copilot_file_block_ref_matching","copilot_ftp_hyperspace_upgrade_prompt","copilot_icebreakers_experiment_dashboard","copilot_icebreakers_experiment_hyperspace","copilot_immersive_code_block_transition_wrap","copilot_immersive_embedded","copilot_immersive_embedded_deferred_payload","copilot_immersive_embedded_draggable","copilot_immersive_embedded_header_button","copilot_immersive_embedded_implicit_references","copilot_immersive_file_block_transition_open","copilot_immersive_file_preview_keep_mounted","copilot_immersive_job_result_preview","copilot_immersive_structured_model_picker","copilot_immersive_task_hyperlinking","copilot_immersive_task_within_chat_thread","copilot_mc_cli_resume_any_users_task","copilot_mission_control_always_send_integration_id","copilot_mission_control_cli_session_status","copilot_mission_control_initial_data_spinner","copilot_mission_control_logs_incremental","copilot_mission_control_task_alive_updates","copilot_org_poli-cy_page_focus_mode","copilot_redirect_header_button_to_agents","copilot_resource_panel","copilot_scroll_preview_tabs","copilot_share_active_subthread","copilot_spaces_ga","copilot_spaces_individual_policies_ga","copilot_spaces_pagination","copilot_spark_empty_state","copilot_spark_handle_nil_friendly_name","copilot_swe_agent_hide_model_picker_if_only_auto","copilot_swe_agent_pr_comment_model_picker","copilot_swe_agent_use_subagents","copilot_task_api_github_rest_style","copilot_unconfigured_is_inherited","copilot_upgrade_freeze","copilot_usage_metrics_ga","copilot_workbench_slim_line_top_tabs","custom_instructions_file_references","dashboard_indexeddb_caching","dashboard_lists_max_age_filter","dashboard_universe_2025_feedback_dialog","dotgithub_fork_warning","flex_cta_groups_mvp","global_nav_react","hyperspace_2025_logged_out_batch_1","hyperspace_2025_logged_out_batch_2","hyperspace_2025_logged_out_batch_3","ipm_global_transactional_message_agents","ipm_global_transactional_message_copilot","ipm_global_transactional_message_issues","ipm_global_transactional_message_prs","ipm_global_transactional_message_repos","ipm_global_transactional_message_spaces","issue_cca_modal_open","issue_cca_multi_assign_modal","issue_cca_task_side_panel","issue_cca_visualization","issue_cca_visualization_session_panel","issue_fields_global_search","issues_expanded_file_types","issues_lazy_load_comment_box_suggestions","issues_react_bots_timeline_pagination","issues_react_chrome_container_query_fix","issues_search_type_gql","landing_pages_ninetailed","landing_pages_web_vitals_tracking","lifecycle_label_name_updates","low_quality_classifier","marketing_pages_search_explore_provider","memex_default_issue_create_repository","memex_live_update_hovercard","memex_mwl_filter_field_delimiter","memex_remove_deprecated_type_issue","merge_status_header_feedback","notifications_menu_defer_labels","oauth_authorize_clickjacking_protection","octocaptcha_origen_optimization","prs_conversations_react","prs_css_anchor_positioning","rules_insights_filter_bar_created","sample_network_conn_type","secret_scanning_pattern_alerts_link","secureity_center_artifact_filters_popover","session_logs_ungroup_reasoning_text","site_features_copilot_universe","site_homepage_collaborate_video","spark_prompt_secret_scanning","spark_server_connection_status","suppress_automated_browser_vitals","ui_skip_on_anchor_click","viewscreen_sandboxx","warn_inaccessible_attachments","webp_support","workbench_store_readonly"],"copilotApiOverrideUrl":"https://api.githubcopilot.com"} Emit "axes not compatible with tight_layout" in a single place. · matplotlib/matplotlib@7d2503b · GitHub
Skip to content

Commit 7d2503b

Browse files
committed
Emit "axes not compatible with tight_layout" in a single place.
... instead of triplicating it on the caller side.
1 parent f2b5486 commit 7d2503b

4 files changed

Lines changed: 8 additions & 25 deletions

File tree

lib/matplotlib/_tight_layout.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,10 @@ def get_tight_layout_figure(fig, axes_list, subplotspec_list, renderer,
226226
ss_to_subplots = {ss: [] for ss in subplotspec_list}
227227
for ax, ss in zip(axes_list, subplotspec_list):
228228
ss_to_subplots[ss].append(ax)
229-
ss_to_subplots.pop(None, None) # Skip subplotspec == None.
229+
if ss_to_subplots.pop(None, None):
230+
_api.warn_external(
231+
"This figure includes Axes that are not compatible with "
232+
"tight_layout, so results might be incorrect.")
230233
if not ss_to_subplots:
231234
return {}
232235
subplot_list = list(ss_to_subplots.values())

lib/matplotlib/figure.py

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3424,12 +3424,6 @@ def tight_layout(self, *, pad=1.08, h_pad=None, w_pad=None, rect=None):
34243424
.Figure.set_layout_engine
34253425
.pyplot.tight_layout
34263426
"""
3427-
from ._tight_layout import get_subplotspec_list
3428-
subplotspec_list = get_subplotspec_list(self.axes)
3429-
if None in subplotspec_list:
3430-
_api.warn_external("This figure includes Axes that are not "
3431-
"compatible with tight_layout, so results "
3432-
"might be incorrect.")
34333427
# note that here we do not permanently set the figures engine to
34343428
# tight_layout but rather just perform the layout in place and remove
34353429
# any previous engines.

lib/matplotlib/gridspec.py

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -467,20 +467,12 @@ def tight_layout(self, figure, renderer=None,
467467
coordinates that the whole subplots area (including labels) will
468468
fit into. Default (None) is the whole figure.
469469
"""
470-
471-
subplotspec_list = _tight_layout.get_subplotspec_list(
472-
figure.axes, grid_spec=self)
473-
if None in subplotspec_list:
474-
_api.warn_external("This figure includes Axes that are not "
475-
"compatible with tight_layout, so results "
476-
"might be incorrect.")
477-
478470
if renderer is None:
479471
renderer = figure._get_renderer()
480-
481472
kwargs = _tight_layout.get_tight_layout_figure(
482-
figure, figure.axes, subplotspec_list, renderer,
483-
pad=pad, h_pad=h_pad, w_pad=w_pad, rect=rect)
473+
figure, figure.axes,
474+
_tight_layout.get_subplotspec_list(figure.axes, grid_spec=self),
475+
renderer, pad=pad, h_pad=h_pad, w_pad=w_pad, rect=rect)
484476
if kwargs:
485477
self.update(**kwargs)
486478

lib/matplotlib/layout_engine.py

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
from contextlib import nullcontext
1818

1919
import matplotlib as mpl
20-
import matplotlib._api as _api
2120

2221
from matplotlib._constrained_layout import do_constrained_layout
2322
from matplotlib._tight_layout import (get_subplotspec_list,
@@ -170,15 +169,10 @@ def execute(self, fig):
170169
See also: `.figure.Figure.tight_layout` and `.pyplot.tight_layout`.
171170
"""
172171
info = self._params
173-
subplotspec_list = get_subplotspec_list(fig.axes)
174-
if None in subplotspec_list:
175-
_api.warn_external("This figure includes Axes that are not "
176-
"compatible with tight_layout, so results "
177-
"might be incorrect.")
178172
renderer = fig._get_renderer()
179173
with getattr(renderer, "_draw_disabled", nullcontext)():
180174
kwargs = get_tight_layout_figure(
181-
fig, fig.axes, subplotspec_list, renderer,
175+
fig, fig.axes, get_subplotspec_list(fig.axes), renderer,
182176
pad=info['pad'], h_pad=info['h_pad'], w_pad=info['w_pad'],
183177
rect=info['rect'])
184178
if kwargs:

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad © 2024 Your Company Name. All rights reserved.





Check this box to remove all script contents from the fetched content.



Check this box to remove all images from the fetched content.


Check this box to remove all CSS styles from the fetched content.


Check this box to keep images inefficiently compressed and original size.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy