用python画城市轮播地图


Posted in Python onMay 28, 2021

这里是以其中5个省份的城市为例进行演示

用python画城市轮播地图

画图前准备

在画图之前先导入相关的库

from pyecharts.charts import Map, Timeline
from pyecharts import options
from pyecharts import options as opts

数据

# 1. 准数据
### 山东省
sd_c = ['青岛市','济南市','潍坊市','临沂市','烟台市','聊城市','济宁市','淄博市','菏泽市','德州市','泰安市','滨州市','威海市','东营市','枣庄市','日照市']
sd_d = [1278,1163,834,704,673,632,622,587,586,570,434,401,303,289,216,201]

### 广东省
gd_c = ['广州市','东莞市','佛山市','汕头市','惠州市','中山市','揭阳市','珠海市','江门市','潮州市','湛江市','清远市','汕尾市','肇庆市','茂名市','梅州市','韶关市','河源市','阳江市','云浮市']
gd_d = [1925,1235,936,788,548,464,420,356,354,311,274,246,237,220,205,157,127,118,108,82]

### 四川省
sc_c = ['绵阳市','南充市','广元市','德阳市','宜宾市','达州市','泸州市','广安市','乐山市','遂宁市','眉山市','巴中市','凉山彝族自治州','内江市','自贡市','资阳市','雅安市','攀枝花市','阿坝藏族羌族自治州','甘孜藏族自治州']
sc_d = [944,741,639,555,493,463,359,351,340,337,300,282,239,214,190,174,157,141,123,104]

### 浙江省
zj_c = ['杭州市','温州市','宁波市','金华市','嘉兴市','台州市','绍兴市','湖州市','丽水市','衢州市','舟山市']
zj_d = [1183,792,765,582,438,381,360,288,197,103,66]

### 贵州省
gz_c = ['贵阳市','遵义市','毕节市','黔南布依族苗族自治州','黔西南布依族苗族自治州','六盘水市','安顺市','黔东南苗族侗族自治州','铜仁市']
gz_d = [1605,887,454,414,414,381,338,291,196]

这里以5个省份为例,统计5个省份的各市(不完全统计)以及各市的火锅店数量

绘图

这里绘图主要是用到pyecharts库的Map类和Timeline这两个类

其中Map是绘制城市地图,Timeline是绘制轮播图(整合城市图)

先看一下官方案例

map1 = (
    Map(init_opts=opts.InitOpts(width="700px",height="300px",theme="blue"))
    .add('', [(i,j) for i,j in zip(sd_c,sd_d)], '山东')
    .set_global_opts(visualmap_opts=opts.VisualMapOpts(max_=4000))
)

其init_opts=opts.InitOpts(width="700px",height="300px",theme="blue")这部分代码是自定义的,不需要的可以去掉(这里只是修改了默认从参数)

add中:add('', [(i,j) for i,j in zip(sd_c,sd_d)], '山东'),其中sd_c是省份对应的市,sd_d是每一个市对应的火锅店数,后面的“山东”是省份,sd_c的市是和和山东对应的

# 2. 绘制山东省地图:格式一
map1 = (
    Map(init_opts=opts.InitOpts(width="700px",height="300px",theme="blue"))
    .add('', [(i,j) for i,j in zip(sd_c,sd_d)], '山东')
    .set_global_opts(visualmap_opts=opts.VisualMapOpts(max_=4000))
)
# 3. 绘制广东省地图:格式二
map2 = (
    Map()
    .add('', [(i,j) for i,j in zip(gd_c,gd_d)], '广东')
    .set_global_opts(visualmap_opts=opts.VisualMapOpts(max_=400,is_piecewise=True))
)
# 4. 绘制四川省地图:格式二
map3 = (
    Map()
    .add('', [(i,j) for i,j in zip(sc_c,sc_d)], '四川')
    .set_global_opts(visualmap_opts=opts.VisualMapOpts(max_=400,is_piecewise=True))
)
# 5. 绘制浙江省地图:格式二
map4 = (
    Map()
    .add('', [(i,j) for i,j in zip(zj_c,zj_d)], '浙江')
    .set_global_opts(visualmap_opts=opts.VisualMapOpts(max_=400,is_piecewise=True))
)
# 6. 绘制贵州省地图:格式二
map5 = (
    Map()
    .add('', [(i,j) for i,j in zip(gz_c,gz_d)], '贵州')
    .set_global_opts(visualmap_opts=opts.VisualMapOpts(max_=400,is_piecewise=True))
)

绘制轮播图

将上面的5个城市地图(map1~map5)整合到一起,并且设置间隔为3秒进行轮播

# 4. 创建组合类对象
timeline = Timeline(init_opts=opts.InitOpts(width='720px', height='350px'))

# 5. 在组合对象中添加需要组合的图表对象
timeline.add(chart=map1, time_point="山东省地图")
timeline.add(chart=map2, time_point="广东省地图")
timeline.add(chart=map3, time_point="四川省地图")
timeline.add(chart=map4, time_point="浙江省地图")
timeline.add(chart=map5, time_point="贵州省地图")
### 设置轮播时间
timeline.add_schema(is_auto_play=True, play_interval=3000)

最后保存成html

# 6. 渲染数据
timeline.render("城市地图轮播图.html")

最终的效果

用python画城市轮播地图

小结

以上就是城市轮播图的全部讲解,代码量不多,完整源码:

https://gitee.com/lyc96/carousel-map/tree/master

以上就是用python画城市轮播地图的详细内容,更多关于python 画轮播地图的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python 条件判断的缩写方法
Sep 06 Python
python超简单解决约瑟夫环问题
May 12 Python
Python的Django REST框架中的序列化及请求和返回
Apr 11 Python
python主线程捕获子线程的方法
Jun 17 Python
python库lxml在linux和WIN系统下的安装
Jun 24 Python
根据DataFrame某一列的值来选择具体的某一行方法
Jul 03 Python
Python如何发布程序的详细教程
Oct 09 Python
Python3 sys.argv[ ]用法详解
Oct 24 Python
Python3搭建http服务器的实现代码
Feb 11 Python
PyQt5 控件字体样式等设置的实现
May 13 Python
Anaconda+spyder+pycharm的pytorch配置详解(GPU)
Oct 18 Python
Python 把两层列表展开平铺成一层(5种实现方式)
Apr 07 Python
用Python实现一个打字速度测试工具来测试你的手速
解决Pytorch dataloader时报错每个tensor维度不一样的问题
May 28 #Python
pytorch锁死在dataloader(训练时卡死)
Python趣味爬虫之用Python实现智慧校园一键评教
Pytorch 如何加速Dataloader提升数据读取速度
在前女友婚礼上,用Python破解了现场的WIFI还把名称改成了
pytorch DataLoader的num_workers参数与设置大小详解
May 28 #Python
You might like
PHP strtr() 函数使用说明
2008/11/21 PHP
php检测图片木马多进制编程实践
2013/04/11 PHP
php实现事件监听与触发的方法
2014/11/21 PHP
PHP性能分析工具XHProf安装使用教程
2015/05/13 PHP
PHP新建类问题分析及解决思路
2015/11/19 PHP
使用jquery实现select添加实现后台权限添加的效果
2011/05/28 Javascript
在JavaScript中实现类的方式探讨
2013/08/28 Javascript
前台js对象在后台转化java对象的问题探讨
2013/12/20 Javascript
Javascript中的apply()方法浅析
2015/03/15 Javascript
Js调用Java方法并互相传参的简单实例
2016/08/11 Javascript
利用vue-router实现二级菜单内容转换
2016/11/30 Javascript
js利用for in循环获取 一个对象的所有属性以及值的实例
2017/03/30 Javascript
jQuery异步提交表单实例
2017/05/30 jQuery
基于node.js的fs核心模块读写文件操作(实例讲解)
2017/09/10 Javascript
webpack将js打包后的map文件详解
2018/02/22 Javascript
一个小时快速搭建微信小程序的方法步骤
2019/04/15 Javascript
使用p5.js临摹动态图形
2019/10/23 Javascript
Ant Design Pro 下实现文件下载的实现代码
2019/12/03 Javascript
JQuery表单元素取值赋值方法总结
2020/05/12 jQuery
jQuery实现B2B网站后台管理系统侧导航
2020/07/08 jQuery
JavaScript大数相加相乘的实现方法实例
2020/10/18 Javascript
[48:24]完美世界DOTA2联赛循环赛LBZS vs Forest 第一场 10月30日
2020/10/31 DOTA
Python函数中定义参数的四种方式
2014/11/30 Python
python获取当前计算机cpu数量的方法
2015/04/18 Python
举例详解Python中循环语句的嵌套使用
2015/05/14 Python
python抓取需要扫微信登陆页面
2019/04/29 Python
django将网络中的图片,保存成model中的ImageField的实例
2019/08/07 Python
基于python实现文件加密功能
2020/01/06 Python
Python计算机视觉里的IOU计算实例
2020/01/17 Python
HTML5新特性之type=file文件上传功能
2018/02/02 HTML / CSS
Mixbook加拿大:照片书,照片卡,剪贴簿,年历和日历
2017/02/21 全球购物
大学生饮食配送创业计划书
2014/01/04 职场文书
机电一体化毕业生自荐信
2014/06/19 职场文书
管理岗位竞聘演讲稿
2014/08/18 职场文书
2014年客房部工作总结
2014/11/22 职场文书
教师远程研修感悟
2015/11/18 职场文书