Reputation: 446
I have a script that creates a lot of Polygons using Shapely and then exports them as .geojson files. See toy example below
from shapely.geometry import Polygon
import geopandas
roi = Polygon([(0,0), (0,1), (1,0), (1,1)])
rois = [roi, roi]
geopandas.GeoSeries(rois).to_file("detection_data.geojson", driver='GeoJSON')
However, I also have a list of numbers, each number is associated with one ploygon. Is there a way to export this with the GeoJSON file inside properties?
For example, if I have a list:
detection_prob = [0.8, 0.9]
In the .geojson file I would like the properties section for the first polygon to read
"properties":{"detection_prob":0.8}
and for the second polygon
"properties":{"detection_prob":0.9}
etc etc etc... in the outputted GeoJSON file.
Upvotes: 0
Views: 1220
Reputation: 6786
If you call to_file
on a dataframe instead of a series, you can add extra attributes as columns:
import geopandas as gpd
import shapely.geometry as g
df = gpd.GeoDataFrame({
'geometry': [g.Point(0, 0), g.Point(1,1)],
'name': ['foo', 'bar']
})
df.to_file('out.json', driver='GeoJSON')
Upvotes: 2