这次呢,我想讲讲地图可视化的内容,以前我也写过用Python的内置库绘制地图,但总感觉不够美观。如何才能在短时间内制作漂亮的可视化地图呢,我觉得Python+可视化工具是不错的选择。

以下动态可视化地图就是J哥亲手绘制,展现了一段时间内广州市企事业单位在网上商城采购商品的分布及随时间的变化。

接下来,J哥将手把手教你如何绘制这个动态图,您可在公众号后台回复「cc」获取数据集进行测试。

数据准备

第一步,打开并预览一下数据集,共766条采购记录,包含采购时间、采购单位和采购金额3个字段。

1df = pd.read_excel('cc.xls',index=False)
2df.head()

第二步,根据采购单位字段获取经纬度,批量获取经纬度的方法很多,详情可参考J哥往期原创文章「用Python评测三种批量查询经纬度的方法,你pick哪一种?」。

 1def gaode(addr):2        para = {3            'key':'你的',4            'address':addr5        }6        url = 'https://restapi.amap.com/v3/geocode/geo?'7        req = requests.get(url,para)8        req = req.json()9        print('-' * 30)
10        if req['status']=='1':
11            if len(req['geocodes']) > 0:
12                m = req['geocodes'][0]['location']
13                print(m)
14            else:
15                print("None")
16                m = ""
17        else:
18            print("None")
19
20        return m
21gaode(addr="广州")

应用以上函数并预览数据

1df['lat_lon'] = df['buyer'].apply(gaode)
2df.head()

‍‍‍长这样:

第三步,对经纬度字段分列并存储为csv格式。

1df["lat"] = df["lat_lon"].str.split(',',expand=True)[1]
2df["lon"] = df["lat_lon"].str.split(',',expand=True)[0]
3df = df.drop('lat_lon',axis=1)
4df.to_csv('cc.csv',index=False)

简单三步数据准备完毕,数据预览如下:

数据可视化

将以上数据可视化到地图中的方法也有很多,比如Ecahrts、高德地图可视化平台、地图无忧等,本次主要介绍kepler.gl。

kepler.gl是由Uber开发的进行空间数据可视化的开源工具,是Uber内部进行空间数据可视化的默认工具,通过其面向Python开放的接口包keplergl,我们可以在 jupyter notebook 中通过书写Python代码的方式传入多种格式的数据,在其嵌入notebook的交互窗口中使用其内建的多种丰富的空间数据可视化功能。可以让你不需要任何编程基础,即可实现数据地图的可视化。Kepler.gl 支持的数据格式:CSV、GeoJson 和Json。

一、Jupyter中可视化

1.本地安装

pip install keplergl

注:Windows用户建议conda安装,否则很可能报错。

2.加载地图和数据

二、在线网站中可视化(推荐)

当然,你也可以直接在kepler官网中上传数据操作,但官网速度较慢,建议用如下网站操作:

http://map.guihuayun.com/     #规划云网站搭的一个镜像

打开网站后,首先将cc.csv数据集添加进来。

添加好数据后,可以根据自己的喜好进行图标颜色、大小、地图样式等参数设置。

1.图标设置

2.地图样式更改

3.添加城市轮廓

城市轮廓数据可以在DATAV.GeoAtlas网站进行获取。

4.上传轮廓数据

5.添加时间轴

OK,大功告成!

总结

当然,我们还可以利用同样的数据集制作成热力图、3D地图等。关键是,如此便捷实用又美观的地图可视化工具竟然免费!感觉它比目前市面上很多付费工具还要给力。


由于微信平台算法改版,公号内容将不再以时间排序展示,如果大家想第一时间看到我们的推送,强烈建议星标我们和给我们多点点【在看】。星标具体步骤为:(1)点击页面最上方“小詹学Python”,进入公众号主页。
(2)点击右上角的小点点,在弹出页面点击“设为星标”,就可以啦。
感谢支持,比心。

手把手教你用Python+可视化工具制作漂亮地图相关推荐

  1. python广州地图_手把手教你用Python+可视化工具制作漂亮地图

    作者:J哥 这次呢,我想讲讲地图可视化的内容,以前我也写过用Python的内置库绘制地图,但总感觉不够美观.如何才能在短时间内制作漂亮的可视化地图呢,我觉得Python+可视化工具是不错的选择. 以下 ...

  2. 动态规划python_手把手教你用Python+可视化工具制作漂亮地图

    公众号后台回复"图书",了解更多号主新书内容 作者:J哥 来源:菜J学Python 这次呢,我想讲讲地图可视化的内容,以前我也写过用Python的内置库绘制地图,但总感觉不够美观. ...

  3. 用Python+可视化工具制作漂亮地图

    大家好,我是辰哥~ 这次呢,我想讲讲地图可视化的内容,以前我也写过用Python的内置库绘制地图,但总感觉不够美观.如何才能在短时间内制作漂亮的可视化地图呢,我觉得Python+可视化工具是不错的选择 ...

  4. python 金融分析代码_手把手教你以python为工具进行量化金融分析

    量化交易是指借助现代统计学和数学的方法,利用计算机技术进行投资交易的方式. 对于从未接触过量化的人来说,想要了解量化到底是做什么的,关键掌握四部份的内容:Python基础知识.金融知识.技术指标.量化 ...

  5. python代码示例图形-纯干货:手把手教你用Python做数据可视化(附代码)

    原标题:纯干货:手把手教你用Python做数据可视化(附代码) 导读:制作提供信息的可视化(有时称为绘图)是数据分析中的最重要任务之一.可视化可能是探索过程的一部分,例如,帮助识别异常值或所需的数据转 ...

  6. python画图代码大全-纯干货:手把手教你用Python做数据可视化(附代码)

    原标题:纯干货:手把手教你用Python做数据可视化(附代码) 导读:制作提供信息的可视化(有时称为绘图)是数据分析中的最重要任务之一.可视化可能是探索过程的一部分,例如,帮助识别异常值或所需的数据转 ...

  7. 怎么用python自制计算公式_手把手教你用python制作简易计算器,能够记录你使用的情况...

    话不多说,首先先看效果图,它能够记录你在使用过程中的历史,方便你查看是否有错: 接下来就仔细分析一下是如何制作的: 简易计算器 第一步:导入资源库 在过程中使用到了tkinter这个资源库,win+R ...

  8. 手把手教你用Python打造一款批量下载视频并能可视化显示下载进度的下载器

    点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 桃之夭夭,灼灼其华. /1 前言/ ...

  9. 手把手教你学Python之Matplotlib绘图(一文掌握数据可视化库-Matplotlib)

    目录 Matplotlib介绍 线形图(折线图) 直方图 条形图 饼状图 散点图 Matplotlib介绍        matplotlib是一个Python 的2D绘图库,提供了一套表示和操作图以 ...

最新文章

  1. 开机流程与主引导分区(MBR)
  2. js读取服务器上的txt文件,javascript – 每15秒读取一次文本文件的内容
  3. Java ArrayList isEmpty()方法与示例
  4. 为什么有的人喜欢夜间工作_为什么开发人员喜欢在夜间编码
  5. python面试题之python多线程与多进程的区别
  6. 查看anaconda环境下各个包的版本
  7. 【DEVOPS】SVN Server迁移 - 从VisualSvnServer到iF.SVNAdmin
  8. 在使用RadASM一开始的过程中遇到的问题汇总(后续更新)
  9. 在夜神模拟器内部安装App
  10. 如何从任意页开始设置页码
  11. JXT查询数据库导入到Execl
  12. chm格式电子书另类反编译法:使用压缩软件7Z简单实现CHM电子书反编译 | 志文工作室
  13. google 安装去广告插件
  14. oppo r11 r11t解BL锁安装面具magisk详细教程
  15. unrar file.rar 解压rar 问题,找不到unrar 命令。安装rar unrar流程及bug处理
  16. mysql 计算成功率_mysql数据统计技巧备忘录
  17. 基于可编辑DIV的带表情编辑器
  18. Linux内核--链表结构
  19. ITPUB一周精选2007.11.16
  20. 如何在Mac的m1版本上进行nginx发布网页

热门文章

  1. 数学物理方法·基础篇-学习主要内容
  2. 写一个块设备驱动5,6
  3. 用vue实现小米商城登录注册页面
  4. LWN: 华为EROFS能应对好损坏的文件系统数据吗?
  5. 178页7万字智慧乡村大数据平台建设项目解决方案2022
  6. 如何成为一名懒惰的系统管理员
  7. minst手写数字识别(带界面)
  8. arduino和轮毂电机接线_四. 测试电机相线和霍尔线接线顺序
  9. 披着人皮的幽灵们……(读《死亡清扫日记》有感)
  10. Dell笔记本拆机加内存条