[BUG]: `sankey`: `node.x` / `node.y` of `0` is ignored
Mantenedores costumam responder em até 2 dias
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 2/5
- Tempo estimado
- 1-3 horas
- Facilidade para iniciantes
- 75/100
- Tipo de issue
- Bug
- Clareza
- Claramente especificada
- Status de atividade
- Ativa
- Stack de tecnologia
- d3, javascript
- Domínio
- data-visualization, frontend
Direção de pesquisa
Comece em src/traces/sankey/render.js, no loop “Force node position”, e verifique como ele testa se trace.node.x[p] e trace.node.y[p] estão ausentes. Reproduza o problema com o exemplo fornecido de Plotly.newPlot usando arrangement: 'fixed'. O trabalho estará concluído quando as coordenadas com valor 0 forem respeitadas e a baseline do mock sankey_x_y_with_arrows.json for atualizada, se necessário.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Description
Node coordinates of 0 for node.x or node.yare ignored and the node gets positioned automatically.
Screenshots
With 0 coords:
With close to 0 coords:
Steps to reproduce
- Open Plotly devtools and paste the following into browser devtools:
Plotly.newPlot('g', [{
type: 'sankey',
arrangement: 'fixed',
node: {label: ['a', 'b', 'c'], x: [0, 0.5, 0.8], y: [0, 0, 0.7]},
link: {source: [0, 1], target: [1, 2], value: [1, 1]}
}], {margin: {l: 0, r: 0, t: 0, b: 0}});
- Note that the center of
ais not in the top left corner of the plot
Notes
- This issue stems from the fact that the "Force node position" loop in
src/traces/sankey/render.jsuses a truthy test (if(trace.node.x[p] && trace.node.y[p])), and0is falsy - The fix is to change the test for missing values to
!= null - The mock
sankey_x_y_with_arrows.jsonsetsy: [0, 0, 0], so the fix changes its baseline - Discovered while working on #7826
- Linguagem predominante
- JavaScript
- Estrelas
- 18.4k
- Forks
- 2.1k
- Merge médio
- 1d 9h
- PRs com merge (30d)
- 12
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de plotly/plotly.js
-
bug P3 size: 1
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
Mantenedores costumam responder em até 2 dias
-
bug P3 size: 3
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 86/100
plotly/plotly.js#8108 · 4 comentários ·
Mantenedores costumam responder em até 2 dias
-
chore P3 plotly-internal size: 3 task
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 77/100
plotly/plotly.js#8064 · 1 comentário ·
Mantenedores costumam responder em até 2 dias
-
chore P1 plotly-internal size: 1 task
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 82/100
Mantenedores costumam responder em até 2 dias
-
chore P3 plotly-internal size: 1 task
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
Mantenedores costumam responder em até 2 dias
Todas as issues de plotly/plotly.js
Issues semelhantes
-
step.duration reflects only the last retry attempt (HelperStep.run() overwrites startTime)Talvez já em andamento @mirao assumiu hoje. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
codeceptjs/CodeceptJS#5774 · 1 comentário ·
Mantenedores costumam responder em até 2 dias
-
Status: Unconfirmed
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 76/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
AllTheMods/ATM10-Aeronautics#151 ·
Mantenedores costumam responder em até 4 dias
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
feimacode/open-design-agent-kit#66 ·
Mantenedores costumam responder em até 1 dia