我正在尝试在R中绘制我的研究区域。到目前为止,我已经下载了人口普查OA边界数据,并且我已经将属性数据合并到我希望查看的OA中。
因此,假设总共有1,000个办公自动化系统。我只想查看这些OAs中的500个,对于这些OAs,我有外部数据集。Land是我的空间多边形数据框,包含1,000个OAs。它有一个列,即OA名称"geocode“。但是,它有它的坐标,因为你要运行:
coordinates(land)它会生成所有的坐标。
房价是一个包含房价的数据框和一个带有地理编码的列。
far的代码:
library("sp")
library("GISTools")
library("maptools")
library("spatial")
library("ggplot2")
library("rgdal")
land@data = merge(land@data,houseprice,by.x="geocode",
by.y="geocode",sort=FALSE)
View(land)这表明我只有500个条目(这就是我想要的)。
plot(land)这最终绘制了整个1000个OAs,而不仅仅是我想要的500个。
我必须做什么才能只绘制500个包含数据的OAs?感谢你的帮助
发布于 2017-04-19 20:55:29
您可以直接在您的空间数据上使用merge,因为有一种方法可以做到这一点。然后,只选择在添加的列中没有NA的行(在下面的示例中称为my_col )。
在这里,您只修改了属性表,而没有修改几何
# Merge with external dataset
land2 <- merge(land, houseprice,by.x="geocode", by.y="geocode",sort=FALSE, all.x = TRUE)
# Select only rows of interest
land500 <- land2[which(!is.na(land2$my_col)),]
plot(land500)https://stackoverflow.com/questions/43493674
复制相似问题