On_selection event in faceted plot only works correctly in first facet
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
Hello,
I’m trying to catch on_selection events in a faceted figure.
I create a simple faceted figure, and attach an on_selection handler to all traces.
As an output, I simply print the customdata, and the selector.xrange.
When selecting an area in the first facet, the selector.xrange is an array of numbers, the customdata corresponds to the data for the left facet.
However, when I do the same in the second facet, the selector.xrange becomes an , and the customdata still appears to be coming from the left facet.
I expect the selector.xrange to also be an array of numbers, when selecting in the right facet.
Here are the sample code (to be executed in jupyter notebook) and a screenshot of the result.
py.init_notebook_mode()
df = pd.DataFrame({
"x": [1,2,3,4,1,2,3,4],
"y": [1,2,3,2,1,4,2,3],
"side": ["left","left","left","left","right","right","right","right"],
"customdata": [1,2,3,4,5,6,7,8]
})
fig = px.line(df, x="x", y="y", custom_data=["side","customdata"], facet_col="side")
# fig.update_layout(clickmode='event+select')
fig.update_layout(
dragmode="select",
clickmode="select"
)
fig.update_traces(marker_size=20)
f = go.FigureWidget(fig)
def click_handler(trace, points, selector):
print(trace.customdata)
print(selector.xrange)
f.data[0].on_selection(click_handler)
f
Kind Regards
Bart
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 l’exemple de faceted-plot fourni dans un notebook Jupyter et examinez le callback de sélection de FigureWidget attaché via f.data[0].on_selection. Comparez selector.xrange et trace.customdata lors de la sélection des facettes gauche et droite. C’est terminé lorsque les sélections dans les deux facettes indiquent la plage numérique et les données de facette appropriées.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- jupyter-notebook, 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
- 38/100