Я пытаюсь обновить хороплет, но это работает только тогда, когда я определяю фигуру вне обратного вызова, как это:
fig = px.choropleth(
df,
geojson=counties,
locations='COV_',
color='Enero')
fig.update_geos(fitbounds="locations", visible=False)
fig.update_layout(margin={"r":0,"t":0,"l":0,"b":0})
APP.layout = html.Div([
dbc.FormGroup(
[
dbc.Label("Tipo de delito"),
dcc.Dropdown(
id="in-delito",
value=NE['Tipo de delito'].unique()[0],
options=[
{"label": col, "value": col} for col in NE['Tipo de delito'].unique()
]
),
]
),
dcc.Graph(id="gr-delito-map", figure=fig)
])
Но когда пытаюсь обновить с обратным вызовом, как это:
@APP.callback(
[dash.dependencies.Output('gr-delito-map', 'figure')],
[dash.dependencies.Input('in-delito', 'value')]
)
def update_delito(value):
global counties
df = pd.read_csv(BASE_PATH+'/../Descargador/data/ne.csv')
df = df.filter(["Año", "Clave_Ent", "Tipo de delito", "Enero"])
#df = df[df['Tipo de delito']=='Homicidio']
df = df[df['Tipo de delito']==value]
df[["Enero"]] = df[["Enero"]].apply(pd.to_numeric)
df = df.groupby('Clave_Ent').sum()
df=df.reset_index()
df['COV_'] = df['Clave_Ent'].astype(str)
fig = px.choropleth(
df,
geojson=counties,
locations='COV_',
color='Enero')
return fig
Никогда не работает, и я получаю только ошибку 'Ошибка обновления обратного вызова'.
Я пробую часть кода, подобную этой, которая работает по этой ссылке:
https://community.plot.ly/t/how-to-update-a-choropleth-map/23340/2
Но по любой причине это не работает с этой цифрой или данными.
И ошибка на дисплее не отображает информацию.
Любой Идея о том, как я могу это исправить?
Спасибо