2017-06-30 61 views
1

我有一組點,其指向:很難找到哪些多邊形包含使用SP包中的R

> head(Map3) 
SpatialPoints: 
        lat  long 
Cincinnati OH 39.10312 -84.51202 
Dayton OH  39.75895 -84.19161 
Lexington KY 38.04058 -84.50372 
Zanesville OH 39.94035 -82.01319 
Louisville KY 38.25266 -85.75846 
Columbus OH 39.96118 -82.99879 
Coordinate Reference System (CRS) arguments: +proj=utm +zone=10 +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0 

而且一組多邊形稱爲shape,這是在美國(DMA中)區域。

他們有相同的座標系,我知道它們重疊:

> proj4string(shape) 
[1] "+proj=utm +zone=10 +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0" 
> proj4string(Map3) 
[1] "+proj=utm +zone=10 +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0" 
> bbox(Map3) 
      min  max 
lat 21.30694 64.83778 
long -157.85833 -68.77781 
> bbox(shape) 
     min  max 
x -124.73297 -66.94932 
y 24.54424 49.38436 

他們似乎也有類似的範圍(以及經/緯度似乎是正確的順序):

> range([email protected]) 
[1] -157.85833 64.83778 
> range([email protected]) 
[1] -124.73297 49.38436 

但是,當我試圖讓那裏的點都包含在多邊形,我什麼也沒有:

> indices <- over(Map3,shape) 
> head(indices) 
       NAME PHshare Rank PUSA DMA USTV CPHShare Hrank HTV markets marketpop Dmoney Rmoney Dpc Rpc AdsPC adrepshare fraction split 
Cincinnati OH <NA>  NA NA NA <NA> NA  NA NA NA <NA>  NA  NA  NA NA NA NA   NA  NA NA 
Dayton OH  <NA>  NA NA NA <NA> NA  NA NA NA <NA>  NA  NA  NA NA NA NA   NA  NA NA 
Lexington KY <NA>  NA NA NA <NA> NA  NA NA NA <NA>  NA  NA  NA NA NA NA   NA  NA NA 
Zanesville OH <NA>  NA NA NA <NA> NA  NA NA NA <NA>  NA  NA  NA NA NA NA   NA  NA NA 
Louisville KY <NA>  NA NA NA <NA> NA  NA NA NA <NA>  NA  NA  NA NA NA NA   NA  NA NA 
Columbus OH <NA>  NA NA NA <NA> NA  NA NA NA <NA>  NA  NA  NA NA NA NA   NA  NA NA 

不知道是什麼問題,我想要的是找出哪些區域包含點。

如果問題是lat/long的順序,我該如何反轉這個?

這裏是data

+0

我認爲你需要切換Map3的順序和調用'over'的形狀。 – lbusett

回答

0

你確定你指定正確的經度爲x,和緯度在SpatialPoints爲y?
您的bbox輸出不是相同的順序,所以我想這是錯誤的。

編輯: 您的點數據的bbox不是正確的順序。你應該按原樣導入你的csv文件:

library(sp) 

Map3 <- read.csv("stackdata/points.csv") 
coordinates(Map3) <- ~lon+lat 

bbox(Map3) 

如果你在你的shapefile中繪製你的點,你應該看看它們是否疊加。

plot(shape) 
points(Map3) 
+0

我不確定這是否是錯誤,因爲檢查範圍(Map3 @ bbox)和範圍(shape @ bbox)以相同的順序顯示它們。 – Steven

+0

當你繪製你的數據時,它們是否重疊?你能否在這裏提供你的數據,以便我們可以嘗試自己? –

+0

我已經添加了上面的數據鏈接,謝謝。 – Steven

相關問題