[BUG]: percentTotal not shown as percentage
Mantenedores costumam responder em até 2 dias
Avaliação
- Dificuldade
- 1/5
- Tempo estimado
- Menos de uma hora
- Facilidade para iniciantes
- 93/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
Leia src/traces/bar/plot.js, onde a issue aponta um erro de digitação no nome de uma propriedade, e examine a cobertura de funnel em test/jasmine/tests/funnel_test.js. Execute os testes de funnel e confirme que %{percentTotal} é exibido como 50%, 33% e 17% para os valores informados.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Description
This issue is related to plotly.py#4368, which was addressed in Plotly.py 5.17.0. However, the issue is still reproducible with Plotly.py 7.1.0 and Plotly.js 4.1.2.
The root cause is a typo in src/traces/bar/plot.js. Plotly.js correctly computes percentTotal, but assigns the formatted percentage to percenTotalLabel instead of percentTotalLabel (missing "t").
As a result, funnel text templates using %{percentTotal} display the raw ratio rather than the formatted percentage.
Screenshots/Video
Before :
After :
Steps to reproduce
python
import plotly
import plotly.graph_objects as go
print("Plotly version:", plotly.__version__)
fig = go.Figure(
go.Funnel(
name="X",
y=["A", "B", "C"],
x=[40, 30, 20],
textposition="inside",
texttemplate=(
"%{value}<br>"
"%{percentPrevious}<br>"
"%{percentTotal}"
),
)
)
fig.show()
Solution
The issue was fixed by correcting the property name in src/traces/bar/plot.js.
A regression test was also added to test/jasmine/tests/funnel_test.js to verify that %{percentTotal} renders as 50%, 33%, and 17% for the corresponding funnel values.
Validation
The funnel test suite failed before the fix because the labels contained raw ratios.
All 63 funnel tests passed after the fix.
Linting and type checking passed.
To validate the fix locally in Plotly.py, the build issue was worked around, Plotly.js was built and packed, and the resulting local bundle was imported in Plotly.py 4.1.0.
The local test ran successfully and confirmed that the percentage labels were formatted correctly.
Notes
I'm new in contributing on open source project, any advice are welcome !
- Linguagem predominante
- JavaScript
- Estrelas
- 18.4k
- Forks
- 2k
- Merge médio
- 3d 2h
- PRs com merge (30d)
- 15
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: 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
-
[mkdocs] Update link in Edit this Page buttonTalvez livre de novo @AbhinavKumar-Jha assumiu há 154 dias e não há nenhum pull request aberto. Abertabug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
plotly/plotly.js#7648 · 3 comentários ·
Mantenedores costumam responder em até 2 dias
Todas as issues de plotly/plotly.js
Issues semelhantes
-
[External Plugin]: CarboneAbertaexternal-plugin ready-for-review third party
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 63/100
github/awesome-copilot#5259 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
[Bug]: fileUploadMatrix.test.ts URL case does a real DNS lookup and fails offlineTalvez já em andamento @r2jaff assumiu hoje. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
ComposioHQ/composio#5054 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
addyosmani/agent-skills#717 ·
Mantenedores costumam responder em até 3 dias
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
apache/rocketmq-dashboard#7318 ·
Mantenedores costumam responder em até 3 dias
-
W3cAberta
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
web-platform-tests/wpt#64017 ·
Mantenedores costumam responder em até 1 dia