2016-12-03 68 views
0

我正嘗試使用geojsonio包從其他一些R包中提取的data.frames中寫入一些geojson文件。將數據轉換爲geojson錯誤

library(ggplot2) 
library(geojsonio) 
us_state <- map_data('state') 

geojson_write(us_state, 
       geometry="polygon", 
       grouping="group", 
       file="path/file.geojson") 

我遇到的問題是與geometry=polygon參數。我得到以下錯誤:

Error in .subset2(x, i, exact = exact) : 
    attempt to select less than one element in integerOneIndex 

geometry=point它工作正常,但後來我當然只是一百萬單獨點,而不是以GeoJSON文件狀態的多邊形。

有什麼想法?

編輯:

我可以得到一個工作GeoJSON的文件,如果我用file<-geojson_json(data.frame)第一,然後geojson_write(file)

回答

1

你只需要使用正確的參數名稱group,不grouping。由於該函數具有...,因此可以傳入錯誤的參數名稱並且不會拋出任何錯誤/等。

library(ggplot2) 
library(geojsonio) 
us_state <- map_data('state') 
geojson_write(us_state, 
      geometry = "polygon", 
      group = "group", 
      file = "file.geojson") 

#> { 
#> "type": "FeatureCollection", 
#>                     
#> "features": [ 
#> { "type": "Feature", "id": 0, "properties": { "dummy": 0.000000 }, "geometry": { "type": "MultiPolygon", "coordinates": [ [ [ [ -87.462005615234375, 30.389680862426758 ], [ -87.484931945800781, 30.372491836547852 ], [ -87.525032043457031, 30.372491836547852 ], [ -87.53076171875, 30.332386016845703 ], [ -87.570869445800781, 30.326654434204102 ], [ -87.588058471679688, 30.326654434204102 ], [ -87.593788146972656, 30.309467315673828 ], [ -87.593788146972656, 30.286548614501953 ], [ -8 
#> ... cutoff 
+0

oh,duh。謝謝。 – moman822