用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中的__init__和__new__
Mar 12 Python
Python中的数学运算操作符使用进阶
Jun 20 Python
Python在线运行代码助手
Jul 15 Python
Python中顺序表的实现简单代码分享
Jan 09 Python
Python之reload流程实例代码解析
Jan 29 Python
Python 实现数据结构-循环队列的操作方法
Jul 17 Python
TensorFlow查看输入节点和输出节点名称方式
Jan 04 Python
解决Pycharm中恢复被exclude的项目问题(pycharm source root)
Feb 14 Python
重写django的model下的objects模型管理器方式
May 15 Python
什么是python的函数体
Jun 19 Python
python爬虫爬取网页数据并解析数据
Sep 18 Python
Python函数式编程中itertools模块详解
Sep 15 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 Smarty date_format [格式化时间日期]
2010/03/15 PHP
php ftp文件上传函数(基础版)
2010/06/03 PHP
PHP连接SQLServer2005的实现方法(附ntwdblib.dll下载)
2012/07/02 PHP
PHP-X系列教程之内置函数的使用示例
2017/10/16 PHP
用js实现的抽象CSS圆角效果!!
2007/05/03 Javascript
JQuery 返回布尔值Is()条件判断方法代码
2012/05/14 Javascript
JavaScript伸缩的菜单简单示例
2013/12/03 Javascript
jquery 隐藏与显示tr标签示例代码
2014/06/06 Javascript
快速解决jquery.touchSwipe左右滑动和垂直滚动条冲突
2016/04/15 Javascript
js 创建对象 经典模式全面了解
2016/08/16 Javascript
纯JS打造网页中checkbox和radio的美化效果
2016/10/13 Javascript
Javascript 实现简单计算器实例代码
2016/10/23 Javascript
微信小程序 scroll-view组件实现列表页实例代码
2016/12/14 Javascript
Vue.2.0.5实现Class 与 Style 绑定的实例
2017/06/20 Javascript
详解vue项目构建与实战
2017/06/27 Javascript
jquery实现左右轮播图效果
2017/09/28 jQuery
Vue组件之Tooltip的示例代码
2017/10/18 Javascript
vue路由跳转时判断用户是否登录功能的实现
2017/10/26 Javascript
vue+vue-validator 表单验证功能的实现代码
2017/11/13 Javascript
Koa2微信公众号开发之本地开发调试环境搭建
2018/05/16 Javascript
vue升级之路之vue-router的使用教程
2018/08/14 Javascript
重学 JS:为啥 await 不能用在 forEach 中详解
2019/04/15 Javascript
基于vue实现滚动条滚动到指定位置对应位置数字进行tween特效
2019/04/18 Javascript
python虚拟环境 virtualenv的简单使用
2020/01/21 Javascript
使用js和canvas实现时钟效果
2020/09/08 Javascript
基于pandas将类别属性转化为数值属性的方法
2018/07/25 Python
如何利用python web框架做文件流下载的实现示例
2020/06/02 Python
Python devel安装失败问题解决方案
2020/06/09 Python
蛋白质世界:Protein World
2017/11/23 全球购物
Parfumdreams芬兰:购买香水和化妆品
2021/02/13 全球购物
金士达面试非笔试
2012/03/14 面试题
linux面试题参考答案(10)
2016/10/26 面试题
什么是方法的重载
2013/06/24 面试题
青年标兵事迹材料
2014/08/16 职场文书
「睡美人」爱洛公主粘土人开订
2022/03/22 日漫
redis lua限流算法实现示例
2022/07/15 Redis