Skip to content

Conversation

@cvanelteren
Copy link
Collaborator

This PR will integrated pycirclize into UltraPlot exposing chord diagrams, radar plots, and phylogeny plot. It wraps PyCirclize into an UltraPlot flavored manner adding the convenience of normal plotting while harnessing the strenghts of this well developed package.

Putting this in draft for now but it seems to work nicely with main

image

Closes #472

@cvanelteren cvanelteren changed the title Feature: integrate pycirclize in to UltraPlot Feature: integrate pycirclize into UltraPlot Jan 23, 2026
@codecov
Copy link

codecov bot commented Jan 23, 2026

@cvanelteren cvanelteren marked this pull request as ready for review January 24, 2026 09:49
@cvanelteren cvanelteren marked this pull request as draft January 27, 2026 05:36
@cvanelteren cvanelteren requested a review from beckermr January 27, 2026 07:18
@cvanelteren cvanelteren marked this pull request as ready for review January 27, 2026 07:18
@cvanelteren
Copy link
Collaborator Author

Opening this up for review. The new layout is still not stabilizing enough or the CI are too strict. The failing tests are on differences that are not caused by the code introduced here (as it is additive).

@cvanelteren cvanelteren requested a review from gepcel January 27, 2026 07:20
Whether to show radial grid labels.
grid_interval_ratio : float or None, optional
Grid interval ratio (0 to 1).
grid_line_kws, grid_label_kws : dict-like, optional
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd like to bring this to your attention. In ultraplot, we use a lot of _kw, like abc_kw, title_kw, rc_kw, norm_kw, which is efficient, unified, and reduces keystrokes. For these kws here, should we maintain consistency with the ultraplot style or with the pyCirclize style?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Think you are right

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will also move the defaults to RC while I am at it

Copy link
Collaborator

@gepcel gepcel Jan 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I really admire your efficiency. Since you're already tinkering with defaults and RC, when creating plots, there's a warning message: UltraPlotWarning: Tick label sharing not implemented for <class 'ultraplot.axes.polar.PolarAxes'> subplots. It's fine with me, and no big deal. But if you'd like take a look, maybe turn tick label sharing default to off if it's not support, and warn if users manually turn it on? If it will not complicate other thing.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That warning is correct, to avoid it explicitly set sharing to 0. Sharing polar axes does not make sense for multiple subplots -- we may want to add a surpress flag in case it gets annoying

Copy link
Collaborator

@beckermr beckermr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's change kws to kw even in internal functions. Also, defaults should be in the RC.

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.

Feature request: Add Chord diagram

4 participants