簡體   English   中英

Choropleth Map 基於行數的色標

[英]Choropleth Map color scale based on row count

我正在使用 Python 和 Dash 創建一個 web 應用程序,並使用 ISO_ALPHA 值創建了一個等值線 map。

使用回調我過濾了數據,這些數據當然會更新 map,效果很好。 但是,我想添加一個色階,而不是基於單元格值,我希望它基於每個國家的行數。 這旨在顯示每個國家/地區有多少玩家

代碼

    #call back to update map
@app.callback(
    Output(component_id='player_map', component_property='figure'),
    [Input(component_id='select_list', component_property='value')]
)

def display_map(list_selected):
    dff_map = df_map[df_map.band==list_selected]

    fig = px.choropleth(dff_map, locations='iso_alpha', hover_name='iso_alpha')
    fig.update_geos(fitbounds="locations")

    return fig

先感謝您

在此處輸入圖像描述

不確定是否有更有效的方法,但設法找到了一個解決方案(見下文),它將創建一個新列“計數”並根據國家代碼的計數添加計數值。

def display_map(list_selected):
dff_map = df_map[df_map.band==list_selected]

# make a dict with counts
count_dict = {d:(dff_map['iso_alpha']==d).sum() for d in dff_map.iso_alpha.unique()}
# assign that dict to a column
dff_map['count'] = [count_dict[d] for d in dff_map.iso_alpha]

fig = px.choropleth(dff_map, locations='iso_alpha', hover_name='iso_alpha', color='count')
fig.update_geos(fitbounds="locations")

return fig

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM