You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Support glyphs whose along-range crosses the polar origin (0/2π) — e.g. a gene
spanning the origin of a circular genome.
Detail
The coordinate-transformations vignette notes that a geometry truly spanning the
0/2π boundary (e.g. 350°→10°) is not currently supported and would need to be
split into two geometries. The transform_to_along_away() wraparound handling
only corrects an endpoint that lands exactly on 0; it does not handle a glyph
that straddles the boundary.
This limitation is imposed by the ggplot2/grid munching approach, not by
biology — circular genomes routinely have features crossing the origin, and this
is a natural use case for polar plots. A user hitting it today gets a silently
broken glyph and no warning.
Actions (for the polar/coord_radial work)
Detect an along-range that crosses 0/2π and split the glyph into two arcs at
the boundary.
Until then, consider a cli_warn() when a glyph would cross the origin, so
the failure is legible rather than silent.
Summary
Support glyphs whose along-range crosses the polar origin (0/2π) — e.g. a gene
spanning the origin of a circular genome.
Detail
The coordinate-transformations vignette notes that a geometry truly spanning the
0/2π boundary (e.g. 350°→10°) is not currently supported and would need to be
split into two geometries. The
transform_to_along_away()wraparound handlingonly corrects an endpoint that lands exactly on 0; it does not handle a glyph
that straddles the boundary.
This limitation is imposed by the ggplot2/grid munching approach, not by
biology — circular genomes routinely have features crossing the origin, and this
is a natural use case for polar plots. A user hitting it today gets a silently
broken glyph and no warning.
Actions (for the polar/coord_radial work)
the boundary.
cli_warn()when a glyph would cross the origin, sothe failure is legible rather than silent.
coord_radial()epic (Support coord_radial() for circular genome visualizations #96) so the two share oneboundary-splitting implementation.
Assigned to 0.9.0 to land with the other polar/radial changes.
Found during the pre-0.7.0 review.