加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

加拿大的Scattergeo在python中使用plotly

发布时间:2020-12-17 17:35:44 所属栏目:Python 来源:网络整理
导读:我想在地图上形象化加拿大商店的策略.我已经为美国商店做到了.我只想将其复制到加拿大.我认为位置模式,范围和投影应该改变,但我不知道该用哪个值.我将不胜感激任何帮助. def visualize_geo_store_canada(stores_info_df,fig_name='store_strategy_Canada_map

我想在地图上形象化加拿大商店的策略.我已经为美国商店做到了.我只想将其复制到加拿大.我认为位置模式,范围和投影应该改变,但我不知道该用哪个值.我将不胜感激任何帮助.

def visualize_geo_store_canada(stores_info_df,fig_name='store_strategy_Canada_map',title = 'Stores Strategy'):
    data = [ dict(
        type = 'scattergeo',##### WHAT TO REPLACE? ########
        #locationmode = 'USA-states',###############################
        lon = stores_info_df['LONGITUDE'],lat = stores_info_df['LATITUDE'],text = stores_info_df['STRATEGY'],mode = 'markers',marker = dict(
            colorscale= 'Jet',color = stores_info_df['STRATEGY'],colorbar = dict(
                title = 'Strategy',titleside = 'top',tickmode = 'array',)

    ))]

    layout = dict(
        title = title,geo = dict(
            ##### WHAT TO REPLACE? ########
            #scope='usa',#projection=dict( type='albers usa' ),###############################
            showland = True,landcolor = "rgb(250,250,250)",subunitcolor = "rgb(217,217,217)",countrycolor = "rgb(217,countrywidth = 0.5,subunitwidth = 0.5
        ),)

   fig = dict(data=data,layout=layout)
   plotly.offline.iplot(fig,validate=False)
最佳答案
您需要在布局的地理词典中指定其他参数lataxis和lonaxis(基于this).在这种情况下,诸如locationmode和scope之类的参数对我没有帮助.

码:

# import all the necessaries libraries
from plotly import tools
import plotly.offline as py
import plotly.graph_objs as go
import pandas as pd
# your df
stores_info_df = pd.DataFrame({'LONGITUDE':[-60,-80,-100,-120],'LATITUDE':[50,51,53,54],'STRATEGY':['One','Two','Three','Four']})
# your function
def visualize_geo_store_canada(stores_info_df,##### WHAT TO REPLACE? ########
        #locationmode = 'Canada',)
    ))]
    layout = dict(
        title = title,geo = dict(
            ##### WHAT TO REPLACE? ########
            #scope='north-america',# Add coordinates limits on a map
            lataxis = dict(range=[40,70]),lonaxis = dict(range=[-130,-55]),)
    fig = dict(data=data,layout=layout)
    py.plot(fig,validate=False)
# plot a plot
visualize_geo_store_canada(stores_info_df)

输出:

Plot for Canada

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读