Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

[BUG]: `axis.layer` / `axis.zerolinelayer`: `'above traces'` do not render above `scattergl` traces

未关闭
#8,075 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
55/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
活跃
技术栈
javascript

调研方向

Start by running the linked CodePen reproductions and tracing how scattergl rendering interacts with the Cartesian axis and zeroline layer settings. Done means zerolinelayer: 'above traces' visibly places the zeroline above scattergl markers, while the documented behavior remains correct for the line-chart example.

由索引模型根据 Issue 内容生成。

描述

bug
Description:

For Cartesian axes/subplots (for example, those containing scatter traces),
the reference documentation states that:

layer

Parent: layout.xaxis
Type: enumerated , one of ( "above traces" | "below traces" )
Default: "above traces"
Sets the layer on which this axis is displayed. If "above traces", this axis is displayed above all the subplot's traces If "below traces", this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with cliponaxis set to "false" to show markers and/or text nodes above this axis.

zerolinelayer

Parent: layout.xaxis
Type: enumerated , one of ( "above traces" | "below traces" )
Default: "below traces"
Sets the layer on which this zeroline is displayed. If "above traces", this zeroline is displayed above all the subplot's traces If "below traces", this zeroline is displayed below all the subplot's traces, but above the grid lines. Limitation: "zerolinelayer" currently has no effect if the "zorder" property is set on any trace.

However, this does not work for scattergl.

A WebGL marker remains visually above the zeroline (y = 0) even when:

yaxis: {
  zerolinelayer: 'above traces'
}

is set.

Reproducible example:

https://codepen.io/Lexachoc/pen/xbqdWqm

https://codepen.io/Lexachoc/pen/EaWmLKY (line chart)


Relationship to cliponaxis:

This is separate from the feature request in #8074.

cliponaxis controls whether markers/text are clipped to the subplot's plotting area.

axis.layer / axis.zerolinelayer, on the other hand, control the stacking order of the axis / zeroline relative to traces.

Effect of axis.layer / axis.zerolinelayer: 'above traces':
Image

Effect of axis.layer / axis.zerolinelayer: 'above traces' for line chart (the red line should not be seen):

Image

Effect of cliponaxis: false:
Image

主要语言
JavaScript
星标
18.3k
派生
2k
平均合并
1 天 19 小时
30 天内合并 PR
21

环境准备

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

plotly/plotly.js 的其他 Issue

查看 plotly/plotly.js 的全部 Issue

相似的 Issue

更多 JavaScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。