我發現自己的data.frame包含一列列表。在這些列表中是多邊形的座標;其餘的列是多邊形的特徵。展開列表的data.frame列
我想「展開」列表中的座標點,以便我可以使用ggplot2
繪製多邊形並製作地圖,但無法解決如何執行此操作。
我不太瞭解列表的結構,它們都是不同的大小,因爲多邊形有不同的形狀。
該數據本來是一個json文件。我jsonlite
包拉它,然後試圖熬下來的相關組件,如下所示:
library(jsonlite)
json_file <- "https://raw.githubusercontent.com/OpenOil-UG/concessionsmap/master/concessions/data/NG_contracts%2B.geojson" json_data <- jsonlite::fromJSON(json_file, simplifyDataFrame=T) data <- json_data$features data2 <- flatten(data)
這可能不是先從JSON文件正確的方法。對我來說,就像從json獲取數據到我能理解的數據框架那樣,這似乎是最直接的。
*編輯,包括真實數據,而不是樣品
不知道你在問什麼。 Base R已經有了一個繪製多邊形的函數,記錄在'?polygon'上。像'x = a [[1]] [,, 1]; y = a [[1]] [,, 2]; plot(NULL,xlim = range(x),ylim = range(y));多邊形(x,y,col =「blue」)' – Frank
你是如何結束這樣的數據結構的?你似乎有一個三維數組。如果你包含某種[可重現的示例],這將有所幫助(http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)。目前還不清楚你提供的是一行數據框。爲您的示例輸入提供所需的輸出。 – MrFlick