0

我正在尝试使用 ggplot2 对 R 中美国国会选区的数据进行空间分析。

绘制国会选区的地图工作正常。shapefile 可在此处获得: http: //dds.cr.usgs.gov/pub/data/nationalatlas/cgd113p010g.shp_nt00845.tar.gz

解压后,这是我正在运行的代码的相关部分:

library(maptools)
library(rgeos)
library(maps)
library(plyr)
library(ggplot2)


cds13 <- readShapeSpatial("cgd113p010g.shp")
cds13.map <- fortify(cds13)


p <- ggplot() + geom_polygon(aes(x=long, y=lat, group=group), data=cds13.map, fill="white", color="light gray")
p <- p + ylim(c(25,50)) + xlim(c(-125,-65))
p

然而,地理文件还有其他有用的数据,我想添加到强化数据框中(在本例中为 cds13.map)。例如,请参见 cds13$CONG_DIST(区号)和 cd13$CONG_REP(当前代表的姓名)。

有没有一种简单的方法来导入这些感兴趣的变量,最好是通过调用 fortify(或者可能使用合并)?

4

1 回答 1

1

CONG_DIST并且CONG_REP位于cds13@data导入的 shapefile 的插槽数据 ( ) 中。cds13.map您可以使用函数将这些数据添加到强化中merge()。要合并两个对象,您应该使用对象id的列和cds13.map对象的行名称cds13@data

cds13.merged<-merge(cds13.map,cds13@data,by.x="id",by.y="row.names")
于 2013-08-18T06:08:57.177 回答