利用pyecharts绘制省市地图

思路

绘制省市地图应涵盖其市划分、省市的属性(人口,面积,GDP…),我们最终要实现的结果就是随着鼠标的移动可以明确显示其属性数据,同时层次分明,给与读者一目了然的感觉。

效果

利用pyecharts绘制省市地图_第1张图片

代码块

代码均作了注释,需要自取

from pyecharts.charts import Map, Geo
from pyecharts import options as opts
from pyecharts.globals import ChartType, SymbolType

# --------------------------------绘制省市地图----------------------------- #
city1 = ['宿州市', '合肥市', '芜湖市', '六安市', '安庆市', '马鞍山市', '宣城市', '黄山市',
         '淮南市', '蚌埠市', '滁州市', '亳州市', '阜阳市', '淮北市', '池州市', '铜陵市']
city2 = ['南京市', '扬州市', '苏州市', '南京市', '徐州市', '南通市', '泰州市', '无锡市', '镇江市',
         '常州市', '淮安市', '连云港市', '宿迁市', '张家港市', '昆山市', '高邮市','靖江市', '常熟市', '盐城市']
values1 = [10, 40, 45, 50, 67, 80, 100, 115, 130, 140, 155, 165, 175, 30, 90, 190]
value2 = [5, 10, 18, 25, 32, 39, 41, 49, 53, 62, 67, 70, 76, 83, 89, 91, 94, 99]
data_anhui = [list(z) for z in zip(city1, values1)]
data_jiangsu = [list(z) for z in zip(city2, value2)]

anhui_flink = "https://baike.baidu.com/item/%E5%AE%89%E5%BE%BD/37014"  # 副标题
anhui_zlink = "https://zh.wikipedia.org/wiki/%E5%AE%89%E5%BE%BD%E7%9C%81"  # 主标题

provience_anhui = (
    Map(init_opts=opts.InitOpts(width="1500px", height="900px", page_title='安徽省地图-NiKoJJ'))
        .add(
        '安徽',
        data_anhui,
        maptype='安徽',
        is_roam=True,
        is_selected=True,
        is_map_symbol_show=True  # 是否标记图形
    )
        #####
        # 注:这里添加两个省份的地图的话,会相互覆盖一部分,所以这里将江苏省的注释掉了
        ####
        # .add(
        #     '江苏',
        #     data_jiangsu,
        #     maptype='江苏',
        #     is_roam=True,
        #     is_selected=Truef
        # )
        .set_global_opts(
        title_opts=opts.TitleOpts(title="Map-安徽省地图",
                                  title_link=anhui_link,  # 主标题跳转链接
                                  title_target="blank",  # 新窗口打开
                                  subtitle="安徽省市地图",  # 副标题
                                  subtitle_link=anhui_flink,
                                  subtitle_target="self"),  # 当前窗口打开

        visualmap_opts=opts.VisualMapOpts(is_show=True,  # 视觉映射配置
                                          max_=200,
                                          is_calculable=True,  # 是否显示拖拽用的手柄
                                          is_piecewise=True,  # 是否为分段型
                                          range_text=["High", "Low"],
                                          border_color="#000"),  # 两端文本

        tooltip_opts=opts.TooltipOpts(trigger="item",  # 触发类型
                                      trigger_on="mousemove|click",  # 提示框的触发条件
                                      formatter="{b}:{c} (权重)")  # 标签内容格式,这里采用的字符串模板
    )
        .set_series_opts(
        label_opts=opts.LabelOpts(is_show=True)
    )
        .render('provience_安徽.html')
)

更多内容请访问个人博客,链接:NiKoJJ‘s Blog
同时欢迎关注微信公众号,获取更多有趣内容!
利用pyecharts绘制省市地图_第2张图片

你可能感兴趣的:(Python学习笔记,可视化分析,数据可视化,python)