#r #ggplot2 #geospatial #polygon #spatial
#r #ggplot2 #геопространственные #многоугольник #пространственное
Вопрос:
У меня есть куча областей, определенных следующими данными
MULTIPOLYGON (((-82.38155821054295 29.777919007756058, -82.37586672057267 29.777692426264537,...))
Мне интересно, есть ли какой-либо простой способ преобразовать эти строки в формат, который можно использовать либо с помощью пакета {sf}, либо если есть рецепт, который может преобразовать пару внутри строки в соответствующие столбцы lat / lon.
Заранее спасибо.
Комментарии:
1. можете ли вы поделиться фактическими данными? было
dput()
бы достаточно принять данные multipolygon в качестве аргумента..2. Конечно, полный набор данных общедоступен здесь: data.cityofgainesville.org/Geospatial-Maps -/…
3. Вот одна строка
dput()
выходных данных: pastebin.com/5xJkKwgx
Ответ №1:
Ваши данные уже находятся в формате (WKT), который может быть прочитан sf
.
df <- read.csv("https://data.cityofgainesville.org/api/views/w6hi-8tsw/rows.csv?accessType=DOWNLOAD")
sf::st_as_sfc(df$the_geom)
#> Geometry set for 24 features
#> geometry type: MULTIPOLYGON
#> dimension: XY
#> bbox: xmin: -82.42229 ymin: 29.5929 xmax: -82.22238 ymax: 29.77834
#> CRS: NA
#> First 5 geometries:
#> MULTIPOLYGON (((-82.38156 29.77792, -82.37587 2...
#> MULTIPOLYGON (((-82.34404 29.7036, -82.34362 29...
#> MULTIPOLYGON (((-82.40023 29.67428, -82.40003 2...
#> MULTIPOLYGON (((-82.33932 29.64188, -82.33933 2...
#> MULTIPOLYGON (((-82.33221 29.61823, -82.33225 2...