基于Pyecharts的国铁各路局地图可视化

基于Pyecharts的国铁各路局地图可视化

1 地图在可视化表达中的作用
在数据可视化表达中,地图可视化可以展示与地理位置相关的数据,这种数据表达方式更为明确和直观,可以拓展数据挖掘深层和思路,更好的辅助决策。其中,有行政地图、热力地图、统计地图、轨迹地图等多种形式。比如,疫情期间对各行政区域内疫情数量的可视化展示: 在这里插入图片描述

2 国铁各路局的可视化
国铁各路局的划分与行政划分有较大的区别,是按照线路和车站进行划分的,没有行政区域的边界。所以一般都是下图这样的地图展示: 在这里插入图片描述

现阶段的地图可视化工具中,基本上都是基于行政区域划分的地图。如果想将各路局数据在地图上进行可视化表达时,比如展示本年度各路局开通车站数量,或者各路局发生故障的数量等情况时,还没有一个可用于数据可视化的各路局地图。

3 Pyecharts库
可以进行地图可视化展示的工具很多,这里介绍一下Pyecharts库。
“Echarts是一个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。而Python是一门富有表达力的语言,很适合用于数据处理。当数据分析遇上数据可视化时,pyecharts诞生了。”–来自于Pyecharts官方网站。
Pyecharts库中包括非常丰富的各类可视化图表,这里主要用到的是与地图模块相关的:Geo和Map。当你熟悉Pyecharts库后,加上一点JavaScript知识,也可以掌握Echarts的用法,进而将数据可视化结果布置到线上。示例图如下所示(更多功能可查阅官网说明):
在这里插入图片描述
在这里插入图片描述

Pyecharts库更重要的一个功能是可以通过add_js_funcs方法将自定义的地图json数据增加到地图上,形成自己需要的地图。这就使得我们可以站在巨人的肩膀上去构造一个可用于数据可视化的各路局地图。

4 railwaymap库介绍
笔者在各路局车站管辖范围基础上与省级行政划分进行结合,制作了可用于数据可视化的各铁路局地图。基本思路如下:
(1) 获取各路局分界车站的地理坐标和省级行政分界地理坐标。
(2) 将(1)中获取的地理坐标进行组合,形成路局边界数据。
(3) 将所有路局边界数据组合,形成全国各路局边界数据。
(4) 在Pyecharts的Geo和Map中进行调用。
安装方法:
pip install railwaymap
可通过如下方法调用:
from railwaymap.railway_map import heat_mult_color_map, heat_signal_color_map, normal_map, single_bureau_map
使用时可以根据自己的需求调用、修改库中的相关函数。
使用railwaymap库生成的全国各路局数据展示如下所示:
在这里插入图片描述
还可以对单个路局多个车站的地理位置及数据进行展示,如下:
在这里插入图片描述

5 各路局可视化地图的用途
(1) Pyecharts默认生成HTML文件,可以直接在Flask或Django里面调用。
(2) 可通过snapshot-selenium库生成图片, 生成的图片可以在WORD报告中自动插入或者在PPT中使用。
(3) 地图数据可用于数据大屏的显示,Pyecharts和Echart相关功能都是一致的,只要稍微修改就可以将地图数据放在数据大屏中,在某产品数据大屏中的各路局车站数据如下图所示:
在这里插入图片描述

参考资料:
Echarts: https://echarts.apache.org/zh/index.html
Pyecharts: https://pyecharts.org/#/zh-cn/intro
Geo案例: https://gallery.pyecharts.org/#/Geo/README
Map案例: https://gallery.pyecharts.org/#/Map/README
snapshot-selenium说明: https://pyecharts.org/#/zh-cn/render_images

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值