2017-05-26 10 views
1

リーフレットに問題があります。AddPolygons()にはSpatialPolygonsDataFrameの座標が必要です

次の関数はうまくいきますが、マーカーを追加するときに、経度と緯度変数を呼び出すエラーが表示されます。

作品罰金:

leaflet(mapdata) %>% 
    addPolygons(color = "#444444", weight = 1, smoothFactor = 0.5, 
    opacity = 1.0, fillOpacity = 0.5, 
    highlightOptions = highlightOptions(color = "white", weight = 2, 
    bringToFront = TRUE)) 

正常に動作しません:私は私の地図データを取得するためにGADMを使用

Error: Error in derivePolygons(data, lng, lat, missing(lng), missing(lat), "addPolygons") : 
addPolygons must be called with both lng and lat, or with neither 

私は次のエラーを取得する

leaflet(mapdata) %>% 
    addPolygons(color = "#444444", weight = 1, smoothFactor = 0.5, 
    opacity = 1.0, fillOpacity = 0.5, 
    highlightOptions = highlightOptions(color = "white", weight = 2, 
    bringToFront = TRUE), 
    addMarkers(data='coordinates', lng = longitude, lat = ~ latitude)) 

mapdata <- getData('GADM', country='NL', level=1) 

特定の州の座標は次のように見つけることができますが、私は関数にすべての座標を追加する方法がわからない:

head([email protected][[1]]@Polygons[[1]]@coords) 

     [,1]  [,2] 
[1,] 6.501305 53.19841 
[2,] 6.504287 53.19749 
[3,] 6.504779 53.19761 
[4,] 6.514869 53.20009 
[5,] 6.522253 53.19825 
[6,] 6.523739 53.19736 

私は一種の私の答えhereを見つけました。彼らは、私は次の関数を使って自分のデータを変換するために言う:

mapdata_latlon <- spTransform(mapdata, CRS("+proj=longlat +datum=WGS84")) 

しかし、私は変換されたデータを使用するとき、私は同じエラーを取得します。

私をここで助けてもらえますか?ありがとう。

答えて

2

私はそれを解決しました。どうやら、私はaddMarkers()を間違った方法で追加していました。

正しいコード:

leaflet(mapdata) %>% 
    addPolygons(color = "#444444", weight = 1, smoothFactor = 0.5, 
      opacity = 1.0, fillOpacity = 0.5, 
       highlightOptions = highlightOptions(color = "white", weight = 2, 
       bringToFront = TRUE)) %>% 
    addMarkers(data = coordinates, lng = ~ longitude, lat = ~ latitude) 
関連する問題