Skip to content

fix: implement automatic zorder assignment for proper trace layering #2445

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

huangzhibo
Copy link

Box Plot Layering Fix - Summary

Problem

Fix box plot layering issue where box plots always rendered behind other traces (ribbons, lines) despite correct layer ordering in ggplot2.

Solution

  • Implement automatic zorder assignment based on ggplot2 layer order using new plotly.js functionality
  • Add comprehensive test coverage for zorder functionality

Changes Made

1. Core Fix (R/ggplotly.R:1153-1162)

Added automatic zorder assignment loop that assigns sequential zorder values (zorder = i) to each trace based on their position in the data array.

2. plotly.js Update

Updated to v3.0.1 to support zorder functionality.

3. Test Coverage

Added test cases with visual regression tests to verify boxplot layering behavior.

huangzhibo and others added 3 commits June 19, 2025 14:40
This commit fixes the box plot layering issue where box plots always
rendered behind other traces (ribbons, lines) despite correct layer
ordering in ggplot2. Implements automatic zorder assignment based on ggplot2 layer order using new plotly.js functionality
- Add comprehensive test coverage for zorder functionality
- Test both scenarios: with and without automatic zorder assignment
- Includes visual regression tests with SVG snapshots
- Verifies boxplot renders correctly on top of confidence intervals
- Addresses issue where box plots rendered behind other traces

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
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