使用 geopandas 将属性导出到 .geojson 文件
Export properties into .geojson file using geopandas
我有一个脚本可以使用 Shapely 创建很多多边形,然后将它们导出为 .geojson 文件。请参阅下面的玩具示例
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')
但是,我还有一个数字列表,每个数字都与一个ploygon相关联。有没有办法用属性中的 GeoJSON 文件导出它?
例如,如果我有一个列表:
detection_prob = [0.8, 0.9]
在 .geojson 文件中,我希望读取第一个多边形的属性部分
"properties":{"detection_prob":0.8}
第二个多边形
"properties":{"detection_prob":0.9}
等等等...在输出的 GeoJSON 文件中。
如果您在数据框而不是系列上调用 to_file
,您可以添加额外的属性作为列:
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')
我有一个脚本可以使用 Shapely 创建很多多边形,然后将它们导出为 .geojson 文件。请参阅下面的玩具示例
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')
但是,我还有一个数字列表,每个数字都与一个ploygon相关联。有没有办法用属性中的 GeoJSON 文件导出它?
例如,如果我有一个列表:
detection_prob = [0.8, 0.9]
在 .geojson 文件中,我希望读取第一个多边形的属性部分
"properties":{"detection_prob":0.8}
第二个多边形
"properties":{"detection_prob":0.9}
等等等...在输出的 GeoJSON 文件中。
如果您在数据框而不是系列上调用 to_file
,您可以添加额外的属性作为列:
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')