Transparent markers misbehaving in plotly.express.scatter
Personne n'a encore pris cette issue.
- Langage dominant
- Python
- Étoiles
- 18.8k
- Forks
- 2.8k
- Merge moyen
- 16 h 26 min
- PR mergées (30 j)
- 21
Description
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
)
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Exécutez la reproduction Python fournie avec plotly.express.scatter en utilisant color='loop_number' et size='repetition'. Examinez pourquoi le sous-ensemble transparent est omis à la fois du graphique et de la légende, alors qu’il reste accessible au survol ; le travail est terminé lorsque les marqueurs et l’entrée de légende de ce sous-ensemble sont visibles, tout en préservant le comportement scatter signalé.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- pandas, python
- Domaine
- data-visualization
- Type d'issue
- Bug
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 45/100