#python #plotly #plotly-python #bubble-chart
Вопрос:
У меня проблема с Python, Сюжетно, я учусь его использовать. У меня есть пузырьковая диаграмма, в начале она работает хорошо, но когда я включил фильтр, информация не обновляется. С отпечатками я понял, что update_graph
функция не посещается.
Сначала я читаю excel dfr = pd.read_excel
и создаю тире app = dash.Dash(__name__)
Затем я создаю html:
app.layout = html.Div([ html.Div([ dcc.Dropdown( id = 'ContinentsDrop', options = [ {'label':'Africa', 'value': 'Africa'}, {'label':'Asia', 'value': 'Asia'} ], value = "Africa", multi = False, clearable = False ) ],className = 'ContinentsDrop'), html.Div([ dcc.Graph( id='bubble_char', ) ]),
Я делаю обратный звонок
@app.callback( Output('bubble_char', 'figure'), [Input('Years', 'value'), Input('ContinentsDrop','value')])
Затем функция обновления, что я хотел сделать, так это чтобы пузырьки менялись при ContinentsDrop
обновлении. Например, если там написано «Африка», это покажет информацию об Африке.
def update_bar_chart(slider_range,continents): low, high = slider_range dfr_filter = [] if continents == 0: dfr_filter = dfr[dfr.index.isin(['Asia'])] else: dfr_filter = dfr[dfr.index.isin([continents])] #figure creation fig = px.scatter( data_frame = dfr_filter, x = dfr['Annual CO2 emissions (per capita)'], y = dfr['Total GHG emissions excluding LUCF (CAIT)'], size = str_list_to_int_list(dfr['Total population estimates, 1970-2100 (IIASA (2015))']), hover_name = dfr['Location'], #color = setColor(dfr['Year']), log_x = True, size_max = 60) return fig
Наконец, я запускаю код как app.run_server(debug=True)
. Я думал, что run_server может быть тем, кто создавал проблему, но я пытался добавить if
, удалить debug=True
, но ничего не произошло. Я также изменил update_bar_chart
условия, но ничего не произошло.