我有數據集(PTS)是這樣的:如何計算多邊形意義並映射它們?
x <- seq(-124.25,length=115,by=0.5)
y <- seq(26.25,length=46,by=0.5)
z = 1:5290
longlat <- expand.grid(x = x, y = y) # Create an X,Y grid
pts=data.frame(longlat,z)
names(pts) <- c("x","y","data")
我知道我可以做數據框(PTS)映射到地圖:
library(sp)
library(rgdal)
library(raster)
library(maps)
coordinates(pts)=~x+y
proj4string(pts)=CRS("+init=epsg:4326") # set it to long, lat
pts = spTransform(pts,CRS(" +init=epsg:4326 +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs +towgs84=0,0,0"))
pts <- as(pts, "SpatialPixelsDataFrame")
r = raster(pts)
projection(r) = CRS(" +init=epsg:4326 +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs +towgs84=0,0,0")
plot(r)
map("usa",add=T)
我的問題是,我怎麼能計算10個EPA區域的裝置和映射裝置?
的EPA區域可以在網頁的底部在 http://www.epa.gov/wed/pages/ecoregions/level_iii_iv.htm
中找到感謝
甚至讓你的問題之前,有幾個問題與您的代碼。我通過添加一個對'library(raster)'的調用來修復它。然後,如果你想讓'r'包含'z'中的值,在調用'raster(pts)':pts < - as(pts,「SpatialPixelsDataFrame」)之前,還需要添加以下行。 (因爲你沒有這樣做,'plot(r)'目前失敗並顯示錯誤信息)。最後,爲了使其成爲一個易於重現的示例,您還可以添加代碼以創建覆蓋RasterLayer的簡單SpatialPolygon對象。 (否則,人們必須創建一個以幫助你)。 – 2012-03-30 00:17:01
我無法使rgdal與R 2.14.2一起使用。它說有一個名稱空間問題,這表明我搞亂了,或者包沒有更新,而且你使用的是R的舊版本。所以,我可以給出的最好的幫助是我提到的一個問題的鏈接這可能是類似的[(LINK)](http://stackoverflow.com/questions/9441778/improve-centering-county-names-ggplot-maps) – 2012-03-30 00:17:38
@TylerRinker - 我也運行R 2.14.2,上Windows XP以及最新版本的** rgdal **('0.7.8',2012年1月18日發佈),並且工作順利。出於好奇,你在Windows上還是其他的東西? – 2012-03-30 00:25:13