Как выбрать только метку из указания для заголовка графика (Plotly Da sh) - PullRequest
0 голосов
/ 08 марта 2020

У меня есть словарь с метками и ключом, как показано ниже.

country = pd.read_csv('assets/countries.csv')
country = country.set_index('Code')
country_options = [{'label': f'({cod}) {country.loc[cod, "Country"]} ',
                  'value': f'{cod}'} for cod in country.index]

[{'label': '(AFG) Афганистан', 'value': 'AFG'}, {'label': '(ALB) Албания', 'value': 'ALB' }, {'label': '(DZA) Алжир' .....

У меня также есть обратный вызов для обновления графика, и я хотел бы добавить заголовок в зависимости от параметра, выбранного в раскрывающемся списке.

def update_graph(indi=indicator_options,coun=country_options):
df = indicator_select(coun, indi)
graph_content = dict(data=line_plot(df),
                    layout=go.Layout(
                        title=coun,
                        yaxis=dict(hoverformat='.1f'),
                        )
                    )
return graph_content

Однако title = count вернет мне трехбуквенный символ (значение) dict, но мне нужна метка с символом и именем. Является ли это возможным?

enter image description here

1 Ответ

1 голос
/ 09 марта 2020

Опора value раскрывающегося списка будет возвращать только часть value словаря options, а не часть label. Что вы можете сделать, это создать отображение для нужных вам значений, например:

country_labels = [{f'{cod}': f'({cod}) {country.loc[cod, "Country"]}'} for cod in country.index]

А затем просто выполните title=country_labels[coun],

...