ZOrder parameter Breaks Plotly!
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 18.8k
- Forks
- 2.8k
- Avg merge
- 16h 26m
- Merged PRs (30d)
- 21
Description
Hi, if I set zorder=2 or zorder=3 parameter in Candles, Scatter then the Plotly application will be broken!
It happens with Dash and Panel. So I think the problem is woth Plotly itself.
It happens when I regenerate a figure but sometimes it happens when I open an application first time.
I've recorded a video as it's hard to explain.
https://drive.google.com/file/d/1CiBZgWk60Q--nRdtFyQcyXDZFpfjRgv5/view?usp=drive_link
Some code:
fig: go.Figure = make_subplots(rows=6, cols=1,
shared_xaxes=True,
vertical_spacing=v_subplot_space, # Reduce space between plots
row_heights=row_heights) # Allocate space (Price gets most)
v_subplot_space = 0.001 # vertical_spacing
row_heights=[1.0, 0.1, 0.1, 0.1, 0.1, 0.1]
fig: go.Figure = make_subplots(rows=6, cols=1,
shared_xaxes=True,
vertical_spacing=0.005, # Reduce space between plots
row_heights=row_heights) # Allocate space (Price gets most)
# Bollinger Bands
fig.add_trace(go.Scatter(
hovertext=candles_df[CandlesTypes.DAY_NAME],
x=candles_df[CandlesTypes.DATETIME], y=candles_df[CandlesTypes.BB_UPPER],
name="BB Upper",
line=dict(color='rgba(150, 150, 150, 0.5)', width=1,), # Light grey
zorder=1,
hoverinfo="skip",
), row=1, col=1)
fig.update_yaxes(
row=1, col=1,
)
fig.update_xaxes(
dtick="D1", # Set grid interval to 1 day
matches='x',
)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reducing the supplied make_subplots and Scatter/Candles example to a reproducible case, comparing behavior with and without zorder in Dash and Panel. Check both initial loading and figure regeneration; done means zorder no longer breaks either application.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- plotly, python
- Domain
- data-visualization
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100