2012-10-10 93 views
3

我想使用shape文件和Eurostat提供的數據生成Choroplete地圖。 shapefile已被下載here:使用this post的JD Longs碼。從shapefile中裁剪繪圖

這是重現下面我張貼的數字的最小代碼。

library(maptools) 
tmpdir <- tempdir() 
url <- 'http://ec.europa.eu/eurostat/cache/GISCO/geodatafiles/NUTS_2010_03M_SH.zip' 
file <- basename(url) 
download.file(url, file) 
unzip(file, exdir = tmpdir) 
shapeFile <- paste(tmpdir,"/Shape/data/NUTS_RG_03M_2010", sep="") 

EU <- readShapeSpatial(shapeFile) 
plot(EU) 

我的問題是,我想有繪圖區把重點放在歐洲唯一的,但由於海外地區(法國和西班牙),該地塊不具備對焦點。在上面的例子中是否有一種簡單的方法來「繪製」繪圖區域?

我想擺脫的多邊形是「Country_Shape」的一部分,因此將它們濾除不是選項。 我試圖通過在plot命令中定義xlim和ylim參數來實現我的目標,但沒有成功。我使用locator()從圖形設備獲取座標,但是將值插入沒有提供想要的結果。

The minimal example

回答

6

shape文件投影文件(形狀/數據/ NUTS_RG_03M_2010.prj)示出了以下內容:

GEOGCS [ 「GCS_ETRS_1989」,DATUM [ 「D_ETRS_1989」,SPHEROID [ 「GRS_1980」, 6378137.0,298.257222101],PRIMEM [ 「格林威治」,0.0],單位[ 「度」,0.0174532925199433]]

中包含的.prj文件信息指定的地理座標的幾何數據的系統中的Shapefile 。嘗試使用xlimylim適當的座標該座標系:

R> plot(EU, ylim=c(30, 70), xlim=c(-10, 44)) 
R> box() 

plot example

+0

太好了!非常感謝。這樣做的工作。 – Tungurahua