首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于行数的Choropleth颜色标度

基于行数的Choropleth颜色标度
EN

Stack Overflow用户
提问于 2021-05-28 01:44:02
回答 1查看 32关注 0票数 0

我正在使用Python和Dash创建一个web应用程序,并使用ISO_ALPHA值创建了一个choropleth地图。

使用回调,我已经过滤了数据,这当然会更新地图,它工作得很好。但是,我想添加一个颜色尺度,而不是基于单元格值,我希望它是基于每个国家的行数。这是为了显示每个国家有多少玩家。

代码

代码语言:javascript
复制
    #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

提前谢谢你

EN

回答 1

Stack Overflow用户

发布于 2021-05-28 02:07:06

不确定是否有更有效的方法,但设法找到了一个解决方案(见下文),它将创建一个新的列“count”,并根据国家代码的计数添加计数值。

代码语言:javascript
复制
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
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67727372

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档