资讯专栏INFORMATION COLUMN

介绍如何用Python来绘制高清的交互式地图,建议收藏

lixiang / 980人阅读

摘要:今天小编来为大家介绍一个叫做的模块,我们可以用它来绘制高清的交互式地图,并且标注出重要的地理位置等等,读者在看过本篇文章之后,读者大致会掌握使用来进行交互式地图的绘制在地图上标注出重要的建筑物安装模块画一张最简单的地图我们先来绘制一张

今天小编来为大家介绍一个叫做Folium的模块,我们可以用它来绘制高清的交互式地图,并且标注出重要的地理位置等等,读者在看过本篇文章之后,读者大致会掌握

1. 使用Folium来进行交互式地图的绘制

2. 在地图上标注出重要的建筑物

01

安装模块

pip install folium

02

画一张最简单的地图

我们先来绘制一张简单的地图,以上海为例,上海的经纬度(31.2304, 121.4737)为例,并且我们可以自行设置缩放级别,代码如下

shanghai = folium.Map(location=[31.2304, 121.4737],                      tiles="openstreetmap", zoom_start=12) # 缩放等级

出来的结果如下图所示,为了更加清晰的区域,我们可以简单地增加缩放级别,通过点击“+”或者“-”号在图的周围增加或者减少缩放,当然我们也可以双击地图进一步放大

当然我们也可以保存成html的格式

shanghai.save("test.html")

当然我们也可以设置地图的纹理样式,上述中的代码,地图的纹理样式默认的是“OpenStreetMap”,在这基础之上,我们也可以将其他几种纹理样式给添加上去,如“Stamen Terrain”样式、“Stamen Toner”样式以及“Mapbox Bright”样式等等,代码如下

shanghai = folium.Map(location=[31.2304, 121.4737],                       tiles="openstreetmap", zoom_start=12)folium.raster_layers.TileLayer("Open Street Map").add_to(shanghai)folium.raster_layers.TileLayer("Stamen Terrain").add_to(shanghai)folium.raster_layers.TileLayer("Stamen Toner").add_to(shanghai)folium.raster_layers.TileLayer("Stamen Watercolor").add_to(shanghai)folium.LayerControl().add_to(shanghai)

出来的结果如下图所示,大家可以根据自己的审美酌情选择

03

在地图上做标记

我们同时也可以在地图上做标记,比如标出一些标志性建筑等等,例如上海的话,就像是我们所熟知的“东方明珠塔”、“上海博物馆”等地,我们根据这些标志性建筑的经纬度来打上标记,代码如下

shanghai = folium.Map(location=[31.2304, 121.4737], tiles="openstreetmap",                      zoom_start=12)folium.Marker([31.2397, 121.4998], popup = "东方明珠塔",              icon=folium.Icon(icon="cloud"),).add_to(shanghai)folium.Marker([31.2343, 121.5079], popup = "上海环球金融中心",              icon=folium.Icon(color="red", icon="info-sign"),).add_to(shanghai)folium.Marker([31.1922, 121.3343], popup = "上海虹桥机场",              icon=folium.Icon(color="green"),).add_to(shanghai)folium.Marker([31.2283, 121.4755], popup = "上海博物馆",              icon=folium.Icon(color="purple"),).add_to(shanghai)shanghai

出来的结果如下图所示

当然我们还可以在地图上画圈圈,例如圈出上海市中心相对繁华的地方,

shanghai = folium.Map(location=[31.2304, 121.4737], tiles="openstreetmap",                      zoom_start=12)folium.Circle(location = [31.2297, 121.4762], radius = 900,              color = "purple").add_to(shanghai)shanghai

我们也可以把圈出来的区域填充上颜色

shanghai = folium.Map(location=[31.2304, 121.4737], tiles="openstreetmap",                      zoom_start=12)folium.Circle(location = [31.2297, 121.4762], radius = 900,              color = "purple", fill = True, fill_color = "yellow").add_to(shanghai)shanghai

Folium另外还有很多精致的地图可视化效果,感兴趣的童鞋可以通过阅读其官方文档来进行了解,

历史文章

国内最让人失望的景点有哪些?哪些景点冷门却又十分好玩、值得一去,数据来为你揭晓

Python趣味编程 | 看看如何用Python生成素描风格的自拍照,并且加上Logo

干货分享 | 看如何用Python数据可视化来分析用户留存率,建议收藏

年轻人逃离大城市之后的下一站选哪儿?用数据来为你揭晓

分享、收藏、点赞、在看安排一下?

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/121149.html

相关文章

  • 前端基础入门

    摘要:手把手教你做个人火的时候,随便一个都能赚的盆满钵满,但是,个人没有服务端,没有美工,似乎就不能开发了,真的是这样的吗秘密花园经典的中文手册。涵盖前端知识体系知识结构图书推荐以及入门视频教程,全的简直不要不要的了。 JavaScript 实现点击按钮复制指定区域文本 html5 的 webAPI 接口可以很轻松的使用短短的几行代码就实现点击按钮复制区域文本的功能,不需要依赖 flash。...

    shinezejian 评论0 收藏0
  • 首次公开,整理12年积累博客收藏夹,零距离展示《收藏夹吃灰》系列博客

    摘要:时间永远都过得那么快,一晃从年注册,到现在已经过去了年那些被我藏在收藏夹吃灰的文章,已经太多了,是时候把他们整理一下了。那是因为收藏夹太乱,橡皮擦给设置私密了,不收拾不好看呀。 ...

    Harriet666 评论0 收藏0
  • 这里有8个流行Python可视化工具包,你喜欢哪个?

    摘要:下面,作者介绍了八种在中实现的可视化工具包,其中有些包还能用在其它语言中。当提到这些可视化工具时,我想到三个词探索数据分析。还可以选择样式,它模拟了像和等很流行的美化工具。有很多数据可视化的包,但没法说哪个是最好的。 showImg(https://segmentfault.com/img/remote/1460000019029121); 作者:Aaron Frederick 喜欢用...

    testbird 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<