2012-04-05 54 views
1

我使用R來繪製地圖文件。如何使用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(...) 

我想使用一個情節繪製所有這些形狀(線和多邊形),覆蓋所有的層,多個層通過單個情節。那可能嗎?

回答

3

您可以使用類似以下內容:

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

只需使用add=Tplot()函數中。

2

在ggplot2中,您可以堆疊多個幾何圖形。這將是這樣的:

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

這是假定所有數據集都在相同的投影,所有使用的列名X的x座標等等。注意,GGPLOT2可與data.frames,不屬對象。使用函數fortify將SpatialPolygons對象轉換爲data.frame。

相關問題