从 GeoJSON 对象创建 GeoDataFrame
Create a GeoDataFrame from a GeoJSON object
我有一个多边形的特征集合,我必须先将它写入一个临时文件,然后用 geopandas.GeoDataFrame.from_file(tmp_json_file)
加载它,有什么办法可以不写入临时文件而只创建 GeoDataFrame
来自 GeoJSON
对象?
您可以为此使用 GeoDataFrame.from_features()
函数。一个小例子(假设你有一个 geojson FeatureCollection):
In [1]: from geojson import Feature, Point, FeatureCollection
In [2]: my_feature = Feature(geometry=Point((1.6432, -19.123)), properties={"country": "Spain"})
In [3]: my_other_feature = Feature(geometry=Point((-80.234, -22.532)), properties={'country': 'Brazil'})
In [4]: collection = FeatureCollection([my_feature, my_other_feature])
In [6]: import geopandas
In [7]: geopandas.GeoDataFrame.from_features(collection['features'])
Out[7]:
country geometry
0 Spain POINT (1.6432 -19.123)
1 Brazil POINT (-80.234 -22.532)
我有一个多边形的特征集合,我必须先将它写入一个临时文件,然后用 geopandas.GeoDataFrame.from_file(tmp_json_file)
加载它,有什么办法可以不写入临时文件而只创建 GeoDataFrame
来自 GeoJSON
对象?
您可以为此使用 GeoDataFrame.from_features()
函数。一个小例子(假设你有一个 geojson FeatureCollection):
In [1]: from geojson import Feature, Point, FeatureCollection
In [2]: my_feature = Feature(geometry=Point((1.6432, -19.123)), properties={"country": "Spain"})
In [3]: my_other_feature = Feature(geometry=Point((-80.234, -22.532)), properties={'country': 'Brazil'})
In [4]: collection = FeatureCollection([my_feature, my_other_feature])
In [6]: import geopandas
In [7]: geopandas.GeoDataFrame.from_features(collection['features'])
Out[7]:
country geometry
0 Spain POINT (1.6432 -19.123)
1 Brazil POINT (-80.234 -22.532)