Transparent markers misbehaving in plotly.express.scatter
Ninguém assumiu esta issue ainda.
- Linguagem predominante
- Python
- Estrelas
- 18.8k
- Forks
- 2.8k
- Merge médio
- 16h 26min
- PRs com merge (30d)
- 21
Descrição
Description
I create a scatter plot and use the color and size arguments. One subset gets transparent markers and is not visible in the plot and the legend.
But: if I hover over an area, where a marker should be, the tool tip is appearing, see figure below:
Expected Behavior
Marker should be visible in plot and legend.
Reproduction
Running the code below I get the figure above.
# %%
# Imports
import sys
import plotly
import pandas as pd
import plotly.express as px
print(f'Python version: {sys.version}') # Mine is: 3.11.9
print(f'Pandas version: {pd.__version__}') # Mine is: 2.2.2
print(f'Plotly version: {plotly.__version__}') # Mine is: 5.22.0
# %%
# Create input frame
df = pd.DataFrame(
[
[11739,21.329416,10.010795,2,1],
[20500,21.860714,12.238669,2,2],
[1504,21.927166,10.314574,2,1],
[28194,21.257576,12.823945,2,3],
[9008,21.886381,9.579169,2,1],
[17073,21.57327,11.087076,2,1],
[40734,21.069445,11.887547,3,0],
[36405,22.397081,11.608735,3,0],
[36919,21.95463,12.856195,3,0],
[9867,20.893126,10.761697,2,1]
],
columns=['id' ,'x', 'y', 'loop_number', 'repetition']
)
df.set_index('id', inplace=True)
df.x = df.x.astype('float32')
df.y = df.y.astype('float32')
df.loop_number = df.loop_number.astype('category') # As category to use color labels, not a color bar.
df.repetition = df.repetition.astype('int32')
df.head()
# %%
# Create Scatter Plot
px.scatter(
df,
x='x',
y='y',
color='loop_number',
size='repetition',
labels={
'color': 'Type',
'size': 'Size'
},
hover_name=df.index
)
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.
Direção de pesquisa
Execute a reprodução Python fornecida usando plotly.express.scatter com color='loop_number' e size='repetition'. Investigue por que o subconjunto transparente é omitido tanto do gráfico quanto da legenda, apesar de continuar acessível por hover; considera-se concluído quando os marcadores e a entrada da legenda desse subconjunto estiverem visíveis, preservando o comportamento de scatter relatado.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- pandas, python
- Domínio
- data-visualization
- Tipo de issue
- Bug
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Status de atividade
- Estagnada
- Clareza
- Razoavelmente clara
- Facilidade para iniciantes
- 45/100