1

我正在使用 R 来绘制地图文件。

setwd("c:\\apa\\")
# Load libraries
library("maptools")
library("RColorBrewer")
library("classInt")
library("R2wd")
library("Hmisc")
library("plyr")
library("ggplot2")
library("rgdal")

file.path <- "c:\\apa\\"
file.name <- "apa_planalto_central"
apa <-readShapePoly(paste(file.path,file.name,sep=""))

file.name <- "AUTORIZACAO_09889652011"
auth <-readShapePoly(paste(file.path,file.name,sep=""))

file.name <- "CLIP_HIDROGRAFIA_APA"
hidro <-readShapeLines(paste(file.path,file.name,sep=""))

file.name <- "ferrovias"
ferrovias <-readShapeLines(paste(file.path,file.name,sep=""))

file.name <- "lagos_df"
lagos <-readShapePoly(paste(file.path,file.name,sep=""))

file.name <- "limite_df"
limites <-readShapeLines(paste(file.path,file.name,sep=""))

file.name <- "rodovias"
rodovias <-readShapeLines(paste(file.path,file.name,sep=""))


plot(apa)
plot(...)

我想用一个图绘制所有这些形状(线条和多边形),覆盖所有图层,在一个图上覆盖多个图层。那可能吗?

4

2 回答 2

3

您可以使用以下内容:

plot(apa)
plot(auth, add=T)

只需add=Tplot()函数内使用。

于 2012-04-05T10:58:48.297 回答
3

在 ggplot2 中,您可以堆叠多个几何图形。这将类似于:

ggplot(aes(x = x, y = y), data = pointset1) +
  geom_point() +
  geom_polygon(aes(fill = z), data = polyset1) +
  etc

这假设所有数据集都在同一个投影中,都使用列名 x 作为 x 坐标等。请注意,ggplot2 与 data.frames 一起使用,而不是 sp 对象。使用函数 fortify 将 SpatialPolygons 对象转换为 data.frame。

于 2012-04-05T14:49:06.123 回答