用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使用fileinput模块实现逐行读取文件的方法
Apr 29 Python
python删除指定类型(或非指定)的文件实例详解
Jul 06 Python
浅谈python中的变量默认是什么类型
Sep 11 Python
Python操作word常见方法示例【win32com与docx模块】
Jul 17 Python
Python基于递归算法求最小公倍数和最大公约数示例
Jul 27 Python
Python3进制之间的转换代码实例
Aug 24 Python
python 实现按对象传值
Dec 26 Python
Python SSL证书验证问题解决方案
Jan 13 Python
python pandas.DataFrame.loc函数使用详解
Mar 26 Python
Python实现Appium端口检测与释放的实现
Dec 31 Python
详解Python中的进程和线程
Jun 23 Python
Python PIL按比例裁剪图片
May 11 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实现框架(一)
2006/10/09 PHP
PHP 时间转换Unix时间戳代码
2010/01/22 PHP
PHP 小心urldecode引发的SQL注入漏洞
2011/10/27 PHP
深入PHP购物车模块功能分析(函数讲解,附源码)
2013/06/25 PHP
从零开始学YII2框架(六)高级应用程序模板
2014/08/20 PHP
jQuery使用手册之三 CSS操作
2007/03/24 Javascript
jquery连缀语法如何实现
2012/11/29 Javascript
JQuery的AJAX实现文件下载的小例子
2013/05/15 Javascript
JavaScript—window对象使用示例
2013/12/09 Javascript
JS输入用户名自动显示邮箱后缀列表的方法
2015/01/27 Javascript
浅谈javascript中的instanceof和typeof
2015/02/27 Javascript
javascript跨域原因以及解决方案分享
2015/04/08 Javascript
jquery获取节点名称
2015/04/26 Javascript
jquery判断复选框是否被选中的方法
2015/10/16 Javascript
JS实现为排序好的字符串找出重复行的方法
2016/03/02 Javascript
Angular开发者指南之入门介绍
2017/03/05 Javascript
小发现之浅谈location.search与location.hash的问题
2017/06/23 Javascript
微信小程序中如何计算距离某个节日还有多少天
2019/07/15 Javascript
微信小程序中网络请求缓存的解决方法
2019/12/29 Javascript
从零使用TypeScript开发项目打包发布到npm
2020/02/14 Javascript
详解javascript脚本何时会被执行
2021/02/05 Javascript
[04:56]经典回顾:前Ehome 与 前LGD
2015/02/26 DOTA
Python画图学习入门教程
2016/07/01 Python
20招让你的Python飞起来!
2016/09/27 Python
Python文件读写常见用法总结
2019/02/22 Python
Python argparse模块应用实例解析
2019/11/15 Python
Django ModelForm操作及验证方式
2020/03/30 Python
利用html5 canvas破解简单验证码及getImageData接口应用
2013/01/25 HTML / CSS
HTML块级标签汇总(小篇)
2016/07/13 HTML / CSS
Skyscanner波兰:廉价航班
2017/11/07 全球购物
实现向右循环移位
2014/07/31 面试题
自我评价的写作规则
2014/01/06 职场文书
湖南省党的群众路线教育实践活动总结会议新闻稿
2014/10/21 职场文书
三峡大坝导游词
2015/01/31 职场文书
圣贤教育改变命运观后感
2015/06/16 职场文书
Jupyter Notebook 如何修改字体和大小以及更改字体样式
2021/06/03 Python