查看原文
其他

地图技巧 | 看!零代码就能做出这张3D地图

想喝咖啡的课代表 澎湃美数课 2021-07-30


一周一期的教程又来啦~🗺地图技巧系列也更新到第六期了。

还记得在地图技巧的第一节课 地图技巧 | 让地图立起来~,课代表用 kepler.gl 制作了3D 柱状地图吗?🏔


课代表在收集可视化地图的灵感时,还看到了这种有地形纹理质感的圆锥体的 3D 地图。

 

虽然 kepler.gl 里有很多立体的柱子,但没有圆锥体。所以课代表这节课课代表用 QGIS + Qgis2threejs 插件 + Mapbox地形底图 王牌搭配制作 3D 圆锥体地图。


 


 

本节课的教程分五个大步骤,先放个导引。

  1. 在 QGIS 里加载 Mapbox 地形地图

  2. 导入数据

  3. 安装 Qqis2threejs 插件

  4. 设置 3D 圆锥体效果

  5. 保存图片,制作Gif



相信大家学过 地图技巧|如何做一张有质感的地图 之后,都注册了强大功能的 Mapbox 账号。这里课代表准备好了调好的地形图分享给大家( 后台回复 13 获取地图链接)作为放入 QGIS 里面的地图底图。

复制链接到浏览器,选择右下角的 【Copy】,就可以轻松复制地图到自己的 Mapbox 账号里,如果大家想修改颜色的话,也可以自己调整。

 

右上角选择分享【Share】按钮,再在【Developer resources】里面选择【Third party】—— 【WMTS】(Web地图瓦片服务(Web Map Tile Service),此模式可以让地图在 QGIS 里面使用) —— 【复制URL备用】。

 

打开 QGIS ,添加图层,然后选择【Add WMS/WMTS Layer】。

 

新建一个图层,粘贴刚才在 Mapbox 里面复制过来的 URL。

 

然后点击【Connect】让Mapbox的地图链接到 QGIS 里面。

 

最后,点击【Add】添加地图。

 

经过上述一系列连贯的操作,Mapbox 的底图就加载到了 QGIS 里面了!

 

首先,选择【Plugins】里面的【Manage and Install Plugins…】

 

选择左侧【Install from ZIP】,加载插件压缩包,然后【Install Plugin】(后台回复 13, 获取插件压缩包)

 

如果加载成功后,我们会在【Web】下面看到【Qgis2threejs】的插件。

 

 

选择【Add Delimited Text Layer】导入 csv 数据。

 

数据中的地点都根据经纬度在地图上打点了。

 

 

关键步骤来啦~在菜单栏【Web】—— 【Qgis2threejs】—— 【Qgis2threejs Expoter】,会显示出如下一个新的界面,界面上会把之前我们设置的地图和数据点呈现在这个可以控制角度大小的面板上。

在左侧的Dem和Point下面的图层打勾☑️,就可以看到一个个小球半埋在地图里。

 

那如何变成圆锥体呢?很简单,双击 data 图层,在【Object type】里可以看到有各种类型的图形模式,有球体、圆柱体、圆锥体、立方体等等。

 

这里要注意的是,高度由于原来的数值在地图上呈现不明显,我们可以乘以一个倍数。格式是 引用数据列 * 倍数。后面选取其他列数据的时候,同样乘以这个倍数。

 

这样我们的效果雏形就出来了。

 

但我们的地图背景蓝色,和我们的模式有点不和谐,所以我们在【Scene】——【Scene Settings】里面修改,可以把背景颜色修改成和地图海洋区域接近的灰色。

 

这里我们可以看到还有一个厚度,课代表不需要这个厚度。

 

点击图层【Flat Plane】,把【Build sides】前面的勾去掉。

 

这里我们会看到柱子其实不是水平向上,是有倾斜角度的。比如最高的柱子,有点偏左。这里是因为 3D 中摄像头的模式,默认的是透视模式【Perspective】。


如果我们想要柱子一直都垂直于地图,我们可以在菜单栏的【Scene】里的【camera】修改摄像机镜头为【Orthographic】模式。

 

这样每一个柱子都是垂直于地图了。

 

其他数据,我们可以再次点击【data】图层,修改【Height】里面的数据列,这里大家可以手动修改数据列的数字,就可以获得对应的数字了。

 

 

保存四个疫情节点的图,再在 Adobe illustrator 和 Photoshop 里面加工制作 Gif。

 

后台回复 13 ,获取教程中的模板地址和 Qgis2threejs 插件,一起制作酷炫的 3D 地图!欢迎大家在微博 @澎湃美数课 分享 制作的地图~


对了!我们终于开 留言功能 了!!!

欢迎大家留言告诉我们接下去想学的内容~(也欢迎转发到朋友圈,让课代表更有动力写教程分享给大家🤩)




◒◡◒

┊推 - 荐 - 阅 - 读┊






    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存