用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 相关文章推荐
python3使用tkinter实现ui界面简单实例
Jan 10 Python
在PyCharm中实现关闭一个死循环程序的方法
Nov 29 Python
Python+OpenCV实现图像融合的原理及代码
Dec 03 Python
pyqt5实现绘制ui,列表窗口,滚动窗口显示图片的方法
Jun 20 Python
对python中assert、isinstance的用法详解
Nov 27 Python
python实现异常信息堆栈输出到日志文件
Dec 26 Python
python解释器安装教程的方法步骤
Jul 02 Python
使用Python项目生成所有依赖包的清单方式
Jul 13 Python
浅谈anaconda python 版本对应关系
Oct 07 Python
python爬取youtube视频的示例代码
Mar 03 Python
OpenCV3.3+Python3.6实现图片高斯模糊
May 18 Python
Github 使用python对copilot做些简单使用测试
Apr 14 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
如何删除多级目录
2006/10/09 PHP
php中AES加密解密的例子小结
2014/02/18 PHP
Laravel中log无法写入问题的解决
2017/06/17 PHP
PHP使用Session实现上传进度功能详解
2019/08/06 PHP
php设计模式之适配器模式实例分析【星际争霸游戏案例】
2020/04/07 PHP
javascript 异步页面查询实现代码(asp.net)
2010/05/26 Javascript
jQuery 表单验证扩展(四)
2010/10/20 Javascript
基于Jquery的开发个代阴影的对话框效果代码
2011/07/28 Javascript
js确认删除对话框效果的示例代码
2014/02/20 Javascript
JQuery中DOM实现事件移除的方法
2015/06/13 Javascript
深入分析下javascript中的[]()+!
2015/07/07 Javascript
Jquery $when done then的用法详解
2016/05/20 Javascript
jQuery+ajax+asp.net获取Json值的方法
2016/06/08 Javascript
一种基于浏览器的自动小票机打印实现方案(js版)
2016/07/26 Javascript
vue.js+boostrap项目实践(案例详解)
2016/09/21 Javascript
jquery日历插件e-calendar升级版
2016/11/10 Javascript
jQuery异步提交表单实例
2017/05/30 jQuery
JavaScript异步加载问题总结
2018/02/17 Javascript
node 解析图片二维码的内容代码实例
2019/09/11 Javascript
解决layui的table插件无法多层级获取json数据的问题
2019/09/19 Javascript
vue中使用带隐藏文本信息的图片、图片水印的方法
2020/04/24 Javascript
Python中encode()方法的使用简介
2015/05/18 Python
Python使用asyncio包处理并发详解
2017/09/09 Python
python实现汉诺塔算法
2021/03/01 Python
Python OpenCV实现鼠标画框效果
2020/08/19 Python
用Python做一个久坐提醒小助手的示例代码
2020/02/10 Python
pycharm sciview的图片另存为操作
2020/06/01 Python
keras中的History对象用法
2020/06/19 Python
微软巴西官方网站:Microsoft Brasil
2019/09/26 全球购物
JSF的标签库有哪些
2012/04/27 面试题
计算机专业推荐信范文
2013/11/20 职场文书
小学教研工作制度
2014/01/15 职场文书
护士的自我鉴定
2014/02/07 职场文书
导游词之京东大峡谷旅游区
2019/10/29 职场文书
详解MySQL的Seconds_Behind_Master
2021/05/18 MySQL
Java如何实现通过键盘输入一个数组
2022/02/15 Java/Android