查看原文
其他

地图技巧 | 五彩斑斓的填色地图如何制作?

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


上节地图课 地图技巧 | 《美国国家地理》常用的地图工具如何使用? ,我们初识了 QGIS 制作了散点地图,这只是 QGIS 的入门级小Case,今天课代表教大家进阶版本的填色地图——纽约族裔分布地图👇



话不多说,Let's go~


▼ 数据的前期准备
课代表想让每个街区显示该街区人口比例最多的族裔,所以在数据上做了预处理,每个族裔的 .csv 中只罗列了他们所占比例最多的区域。

⚠️ 这里除了一个 .csv 文件,我们还需要一个.csvt 文件。.csvt 文件的作用是让 QGIS 更好地识别每列数据的类型。如果没有 .csvt 文件,可能导致后面操作识别不出数据。


比如我们的 .csv 数据第一列是整数,第二列是字符,第三列是小数。那我们在 txt 或者 sublime 工具里,对应输入"Integer", "String","Real"就可以了。特别一提的是 .csv 和 .csvt 文件,命名要一致,并且要放在一个根目录下面。


当然还有一份数据就是纽约地图数据。上节地图课,我们提到了 shapefile文件,不记得的同学可以回顾一下👉地图技巧 | 《美国国家地理》常用的地图工具如何使用?


后台回复 11 ,获得此教程数据。

▼Step 1 : 导入数据
数据准备完毕后,我们直接拖入 .shp 地图和 .csv 数据这两个文件到 QGIS 界面,顺便调整一下投影类型。

 

Step 2 : 让 csv 数据和地图数据进行绑定
地图面积上色的原理是,把相同的 .csv 街区编号和 .shp 上街区编号进行匹配,类似 Excel 中的 VLOOKUP 函数。相同名字的街区匹配后,再通过族裔的人口比例数据给街区赋予颜色。 

 
如何匹配呢?我们先双击地图图层,选择【Joins】,再点击 + 号。

 
分别选择表格中纽约地图的街区代号和地图上街区代号,进行匹配。

 
然后点击OK,emmmmm?似乎啥也没有变化。
Nooooope!数据和地图,它们的命运已经静悄悄地捆绑了。
我们可以在地图图层上右击【Open Attribute Table】,相对之前地图的数据信息,现在已经多出两列 .csv 中的数据。



Step 3 :  根据街区的族裔比例数据给地图上色
我们再次双击地图图层,选择【Symbology】,然后选择【Graduated】模式,在【Value】中选择我们需要填充面积颜色的数据列。在填色模式中我们可以选择【Equal Count(Quantile】,根据数据均匀分成50个层次,这样不同范围人数的亚裔就有不同的颜色填充,色彩层次更多。


点击【Symbol】的颜色,在新窗口可以更改描边的颜色粗细和颜色。关于【Fill color】,由于我们默认是【Graduated】模式,所以颜色以【Color ramp】为主,可以忽略此处的【Fill color】里面的颜色。


 
诶?大片的区域都消失了,因为我们的数据里只筛选出街区中亚裔比例超过其他族裔的部分,所以我们要继续补足其他的族裔。



Step 4 :  其他族裔地图部分重复前 3 步骤
纽约族裔分布地图就慢慢充实起来。有些地方,比如中央公园、机场是没有人居住的,所以我们填充为灰色。

 

Step 5 :  再加个烘托的底图吧
最后在【Browser】里面,我们还可以添置一个底图作为背景,烘托纽约地图。选择【XYZ Tiles】,这里课代表选了【Esri Dark Gray】作为背景底图,记得把生成的底图图层放在最后一层。


好啦,QGIS 制作面积图就搞定了!最后可以在 Ai 里面添加标题、图例和数据来源。


后台回复 11 ,获得此教程数据。
欢迎大家在 微博@澎湃美数课 交作业~






◒◡◒

┊推 - 荐 - 阅 - 读┊






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

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