开始使用免费开始使用

错误示范

当创建 Spatial***DataFrame 对象时,有两种方式可以将空间对象(如 Polygons)与数据中的行进行匹配。最稳妥的方法是使用空间对象上的 ID,并将其与数据中的行名匹配。这样可以确保一旦存在不匹配,您会立刻得到提示。另一种方式就是按顺序匹配——第一个空间对象对应数据的第一行。

对象一旦创建,对应关系就完全基于顺序。如果您直接修改 data 槽位(slot),系统不会检查空间对象是否仍与正确的行相对应。实际意味着什么?直接操作 data 槽位非常危险!

为了绘制收入地图,您需要将收入数据框与辖区 SpatialPolygonsDataFrame 匹配。为说明直接操作 @data 的风险,我们来看看如果强行把 nyc_income 塞进 nyc_tracts 会发生什么。

本练习是课程的一部分

在 R 中可视化地理空间数据

查看课程

交互式实操练习

通过完成这段示例代码来试试这个练习。

library(sp)

# Use str() on nyc_income 


# ...and on nyc_tracts@data
编辑并运行代码