Hi,
Is there any way to select points in a chart with a command driven for example by an event from another chart (select points in chart 1, highlight them on chart 2, etc)?
Hi,
Is there any way to select points in a chart with a command driven for example by an event from another chart (select points in chart 1, highlight them on chart 2, etc)?
aha, selectedpoints is read/write, perfect.
hi, I hope this is the right spot to ask this.
I am trying to update a datatable based on the selectedData from a graph component. This works fine when I use the box or lasso tools myself, but if I try to make the selection through the selectedpoints attribute the datatable remains empty.
Is it possible to have selectedData default to the data corresponding to the selectedpoints attribute? Or else, at least default all points in the figure rather than none?
thanks
This works fine when I use the box or lasso tools myself,how? please upload your code if you can
Follow-up question here. It appears (although do correct me if I’m wrong) that when one sets the selectedata attribute, subsequent selections reset this. For instance, if I set a choropleth map with clickmode=“click+select” to show Texas and New Hampshire as selected, then try to shift+click to add other states, it clears those predefined selected points. In other words, are the selectedpoints and selectedData attributes in conflict with each other?
Minimal example:
import dash
from dash import Dash, html, dcc, Input, Output
import dash_bootstrap_components as dbc
import plotly.graph_objects as go
import json
mapdata={
'counts': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50],
'states': ['AL', 'AK', 'AZ', 'AR', 'CA', 'CO', 'CT', 'DE', 'DC', 'FL', 'GA', 'HI', 'ID', 'IL', 'IN', 'IA', 'KS', 'KY', 'LA', 'ME', 'MD', 'MA', 'MI', 'MN', 'MS', 'MO', 'MT', 'NE', 'NV', 'NH', 'NJ', 'NM', 'NY', 'NC', 'ND', 'OH', 'OK', 'OR', 'PA', 'RI', 'SC', 'SD', 'TN', 'TX', 'UT', 'VT', 'VA', 'WA', 'WV', 'WI', 'WY']
}
app = dash.Dash(external_stylesheets=[dbc.themes.BOOTSTRAP])
server = app.server
def getfig():
fig = go.Figure(data=go.Choropleth(
locations=mapdata['states'],
z = mapdata['counts'],
locationmode = 'USA-states',
colorscale="Reds"
))
fig.update_layout(
clickmode='event+select',
geo_scope='usa'
)
return fig
fig=getfig()
app.layout = html.Div([
dcc.Graph(id="choropleth_map",figure=fig),
html.Button(id='submit_button', n_clicks=0, children='Submit')
])
@app.callback(
Output('choropleth_map','figure'),
Input('submit_button','n_clicks')
)
def clickbutton(button):
fig = getfig()
fig.update_traces(
selectedpoints=[6,7,8]
)
return fig
if __name__ == '__main__':
app.run_server(debug=True)
Hey, I’m sorry – I only saw this now, having logged in for something else after a while.
I did not figure it out, but instead just dropped the dcc.store implementation: removing alternative builds (multiselect + dcc.store didn't work) · JohnMulligan/covid_dashPy@87db8a6 · GitHub
I hope that helps!
John