Restyle function breaks "scatter" traces at the "h" orientation
未关闭
还没有人认领这个 Issue。
bug
P3
- 主要语言
- JavaScript
- 星标
- 18.3k
- 派生
- 2k
- 平均合并
- 2 天 12 小时
- 30 天内合并 PR
- 28
描述
If you set the orientation: 'h' to restyle (or update) function, then the "scatter" traces somehow shift relative to each other.
Not reproduce for "bar" traces.
Excemple on codepen:
var x = [1, 2, 3, 4, 5],
y = [0, 1, 2, 3, 4];
var traceCommon = {
//type: 'bar',
type: 'scatter',
orientation: "h",
stackgroup: "s",
mode: 'lines+markers',
x: x,
y: y
};
var trace1 = {
...traceCommon,
//y: [0, 1, 2, 3, 4],
//x: [1, 5, 3, 7, 5]
};
var trace2 = {
...traceCommon,
//y: [1, 2, 3, 4, 5],
//x: [4, 0, 4, 6, 8],
};
Plotly.newPlot('myDiv', [trace1, trace2], { title: { text: "OK" } });
setTimeout(() => {
Plotly.update('myDiv', {
x: [x, x],
y: [y, y],
orientation: ["h", "h"]
}, {
title: { text: "ERROR" }
}, [0, 1]);
}, 1500);
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
使用 Plotly.update 复现包含两个水平 scatter traces 的 CodePen 示例,并将其与注释掉的 bar-trace 变体进行比较。从 Plotly.update/restyle 入口点开始,跟踪如何为 scatter traces 重新计算 orientation 和 stackgroup。完成的标准是更新两个 traces 后它们不再相对彼此发生位移,同时保留 bar 行为。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- javascript
- 领域
- data-visualization
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100