Skip to content

Conversation

cvanelteren
Copy link
Collaborator

This commit introduces a major refactoring of the tick and label sharing mechanism in UltraPlot.

The previous implementation had complex and distributed logic for determining tick and label visibility, which was difficult to maintain and extend. This refactoring centralizes the logic within the Figure class, making it more robust and easier to understand.

Key changes:

  • A new _share_ticklabels method in Figure now handles all tick label sharing.
  • The _get_border_axes method has been improved to be more accurate.
  • The _Crawler utility in ultraplot/utils.py has been rewritten to better handle complex layouts with panels and mixed axes types.
  • Redundant and complex logic has been removed from CartesianAxes, GeoAxes, and other modules.

This commit introduces a major refactoring of the tick and label sharing mechanism in UltraPlot.

The previous implementation had complex and distributed logic for determining tick and label visibility, which was difficult to maintain and extend. This refactoring centralizes the logic within the `Figure` class, making it more robust and easier to understand.

Key changes:
- A new `_share_ticklabels` method in `Figure` now handles all tick label sharing.
- The `_get_border_axes` method has been improved to be more accurate.
- The `_Crawler` utility in `ultraplot/utils.py` has been rewritten to better handle complex layouts with panels and mixed axes types.
- Redundant and complex logic has been removed from `CartesianAxes`, `GeoAxes`, and other modules.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant