[BUG]: `scatterpolargl` drops points between 10000 and 100000 points
Mantenedores costumam responder em até 2 dias
Avaliação
- Dificuldade
- 2/5
- Tempo estimado
- 1-3 horas
- Facilidade para iniciantes
- 82/100
- Tipo de issue
- Bug
- Clareza
- Claramente especificada
- Status de atividade
- Ativa
- Stack de tecnologia
- javascript
- Domínio
- data-visualization, frontend
Direção de pesquisa
Comece em src/traces/scatterpolargl/calc.js e compare a configuração dos marcadores após convert.style com a correção de scattergl em #4323. Reproduza o problema com o exemplo fornecido de 90.000 pontos e confirme que o gráfico polar descarta pontos. O trabalho estará concluído quando scatterpolargl exibir a mesma densidade de pontos que scattergl neste caso.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Description
scatterpolargl does not set opts.marker.snap as scattergl does. This limits how many markers are displayed at certain zoom levels due to how regl-scatter2d handles rendering with its default snap value (10000). See #4323.
Screenshots
scatterpolargl vs. scattergl with the same data:
Steps to reproduce
- Open Plotly devtools and paste the following into the browser devtools console:
const n = 90000;
const gauss = () => (Math.random() + Math.random() + Math.random() + Math.random() - 2) / 2;
const x = [];
const y = [];
const r = [];
const theta = [];
for (let i = 0; i < n; i++) {
const px = 0.05 * gauss();
const py = 0.05 * gauss();
x.push(px);
y.push(py);
r.push(Math.hypot(px, py));
theta.push(Math.atan2(py, px) * 180 / Math.PI);
}
const marker = {color: 'rgba(0,0,255,0.01)', size: 3};
Plotly.newPlot(gd, [
{type: 'scatterpolargl', mode: 'markers', r, theta, marker, subplot: 'polar'},
{type: 'scattergl', mode: 'markers', x, y, marker, xaxis: 'x', yaxis: 'y'}
], {
width: 760,
height: 420,
showlegend: false,
polar: {domain: {x: [0, 0.45]}},
xaxis: {domain: [0.58, 1], anchor: 'y'},
yaxis: {domain: [0.1, 0.9], anchor: 'x', scaleanchor: 'x'}
});
- Note that the
scatterpolarglplot is pale compared toscattergl
Notes
- For a
scatterpolargltrace with more than 10000 points, regl-scatter2d builds its own cluster tree. It then draws only the level-of-detail subset of points. The same data onscattergldraws every point. scatterglhad this bug but it got fixed in #4323- The same fix can be applied to this trace: set
opts.marker.snap = lenafterconvert.styleinsrc/traces/scatterpolargl/calc.js
- Linguagem predominante
- JavaScript
- Estrelas
- 18.4k
- Forks
- 2.1k
- Merge médio
- 1d 5h
- 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]: `sankey`: `node.x` / `node.y` of `0` is ignoredTalvez já em andamento @adimalkar assumiu há 1 dia. Abertabug P3 size: 1
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
plotly/plotly.js#8150 · 1 comentário ·
Mantenedores costumam responder em até 2 dias
-
[BUG]: findEmpties throws "iterated with no new neighbors" for large NaN regions in contour (double-precision underflow)Talvez já em andamento Um pull request vinculado a esta issue está aberto ou já foi mesclado. Abertabug 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
-
neutral:fix
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 78/100
wazuh/wazuh-documentation#10611 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
remotion-dev/remotion#12905 ·
Mantenedores costumam responder em até 1 dia
-
enhancement websites
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
quarto-dev/quarto-cli#15255 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Money fields reject amounts that aren't multiples of $500, so Find cliffs silently does nothingAberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
PolicyEngine/cliff-watch#44 ·