Bug: texttemplate and hovertemplate show inconsistent values when categoryarray is used in Heatmap
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 38/100
- Tipo de issue
- Bug
- Clareza
- Razoavelmente clara
- Status de atividade
- Estagnada
- Stack de tecnologia
- python
- Domínio
- data-visualization
Direção de pesquisa
Reproduza o problema com o exemplo mínimo em Python usando Plotly 6.3.1, incluindo o yaxis categoryarray invertido. Rastreie como heatmap cell values, texttemplate, hovertemplate e o contraste automático do texto são remapeados após a ordenação das categorias; considera-se concluído quando os valores exibidos e as cores do texto permanecem alinhados com as células reposicionadas.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Minimal working example:
import plotly.graph_objects as go
z = [
[1, None, 30, 50, 1],
[20, 1, 60, 80, 30],
[30, 60, 1, -10, 20]
]
x = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']
y = ['Morning', 'Afternoon', 'Evening']
fig = go.Figure(
data=go.Heatmap(
z=z,
x=x,
y=y,
text=z,
texttemplate='%{x}<br>%{y}<br>%{text}',
hovertemplate='%{x}<br>%{y}<br>%{text}<extra></extra>',
)
)
# Reverse y-axis order
fig.update_layout(yaxis={'categoryarray': y[::-1]})
fig.show()
Expected behavior:
- When the
yaxis.categoryarrayis reversed, both the heatmap cells and the text (%{text}) / hover labels should display the correctly corresponding values fromz.
Actual behavior:
-
The axis ordering (
x,y) updates correctly. -
The visual placement of heatmap cells updates correctly.
-
However,
%{text}inhovertemplatestill correspond to the original unsorted order ofz. -
This leads to mismatched hover and text values after sorting by category.
Example:
After reversing the y axis, the heatmap looks right, but hovering over a cell labeled "Morning / Monday" still shows the value corresponding to "Evening / Monday" from the original order.
Additional note (text color rendering issue)
I also noticed that the text color changes incorrectly after sorting:
In the unsorted heatmap, cells like “Thursday / Evening” show white text on a dark blue background, which is legible and consistent.
After applying the categoryarray sort, the same cell (now visually repositioned) starts showing almost black text on the same dark background, making it nearly invisible.
This suggests that the automatic contrast adjustment for text color (based on cell background) may not update properly after the category sorting.
Version info
plotly.__version__
# 6.3.1
- Linguagem predominante
- Python
- Estrelas
- 18.8k
- Forks
- 2.8k
- Merge médio
- 13h 28min
- PRs com merge (30d)
- 20
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.py
-
P3 size: 1 task
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
-
P3 size: 1 task
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
-
bug P1
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 68/100
-
feature P3
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
-
feature P3
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
Todas as issues de plotly/plotly.py
Issues semelhantes
-
area: harness bug status: needs-triage
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
Human-Agent-Society/reef#625 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 80/100
learningequality/kolibri#15351 · 2 comentários ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
-
Name consistency Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
eellak/triplestore#65 · 1 comentário ·