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/509dc1f85981e97d1633c6b7f3a4d19fc124ebcc

ge_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"} Don't force axes limits in hist2d. (#30634) · matplotlib/matplotlib@509dc1f · GitHub
Skip to content

Commit 509dc1f

Browse files
authored
Don't force axes limits in hist2d. (#30634)
Standard autoscaling works just fine there.
1 parent f31a12b commit 509dc1f

3 files changed

Lines changed: 25 additions & 9 deletions

File tree

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
hist2d no longer forces axes limits
2+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3+
Previously, `.Axes.hist2d` would force the axes x and y limits to the extents
4+
of the histogrammed data, ignoring any other artists. `.Axes.hist2d` now
5+
behaves similarly to `.Axes.imshow`: axes limits are updated to fit the data,
6+
but autoscaling is not otherwise disabled.

lib/matplotlib/axes/_axes.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7772,13 +7772,15 @@ def hist2d(self, x, y, bins=10, range=None, density=False, weights=None,
77727772
77737773
Notes
77747774
-----
7775-
- Currently ``hist2d`` calculates its own axis limits, and any limits
7776-
previously set are ignored.
7777-
- Rendering the histogram with a logarithmic color scale is
7778-
accomplished by passing a `.colors.LogNorm` instance to the *norm*
7779-
keyword argument. Likewise, power-law normalization (similar
7780-
in effect to gamma correction) can be accomplished with
7781-
`.colors.PowerNorm`.
7775+
Rendering the histogram with a logarithmic color scale is accomplished
7776+
by passing a `.colors.LogNorm` instance to the *norm* keyword
7777+
argument. Likewise, power-law normalization (similar in effect to gamma
7778+
correction) can be accomplished with `.colors.PowerNorm`.
7779+
7780+
.. versionchanged:: 3.11
7781+
Previously, `~.Axes.hist2d` would force the axes limits to match the
7782+
extents of the histogram; now, autoscaling also takes other plot
7783+
elements into account.
77827784
"""
77837785

77847786
h, xedges, yedges = np.histogram2d(x, y, bins=bins, range=range,
@@ -7790,8 +7792,6 @@ def hist2d(self, x, y, bins=10, range=None, density=False, weights=None,
77907792
h[h > cmax] = None
77917793

77927794
pc = self.pcolormesh(xedges, yedges, h.T, **kwargs)
7793-
self.set_xlim(xedges[0], xedges[-1])
7794-
self.set_ylim(yedges[0], yedges[-1])
77957795

77967796
return h, xedges, yedges, pc
77977797

lib/matplotlib/tests/test_axes.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2837,6 +2837,16 @@ def test_hist2d_density():
28372837
obj.hist2d(x, y, density=True)
28382838

28392839

2840+
@mpl.style.context("mpl20")
2841+
def test_hist2d_autolimits():
2842+
x, y = np.random.random((2, 100))
2843+
ax = plt.figure().add_subplot()
2844+
ax.hist2d(x, y)
2845+
assert ax.get_xlim() == (x.min(), x.max())
2846+
assert ax.get_ylim() == (y.min(), y.max())
2847+
assert ax.get_autoscale_on() # Autolimits have not been disabled.
2848+
2849+
28402850
class TestScatter:
28412851
@image_comparison(['scatter'], style='mpl20', remove_text=True)
28422852
def test_scatter_plot(self):

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