Python で OSMnx を使用して州のジオメトリを取得しています (オーストリアなど)。ただし、OSMnx は間違った OSM オブジェクトを場所として選択することがあります。ID を使用して OSM オブジェクトを指定できますか?
例:
OverpassAPI を使用してオーストリアの州名を取得します。
(area["ISO3166-1"="{country}"];rel(area)[admin_level="{adminLevel}"];);
out center meta;
これにより、状態のリストが表示されます。
@id @lat @lon name
35183 47.2199394 14.8675619 Steiermark
52343 47.1971981 11.5319171 Tirol
52345 46.7517868 13.8605291 Kärnten
74942 47.2184818 9.8839555 Vorarlberg
76909 47.4746574 16.5785134 Burgenland
77189 48.2213684 15.7607387 Niederösterreich
86539 47.4926636 13.0361103 Salzburg
102303 48.1168383 13.8707061 Oberösterreich
109166 48.2202874 16.3796721 Wien
しかし、OSMnx を使用して "Salzburg" のジオメトリを取得すると、ポリゴンではなくポイントが取得されます。
>>> outline = osmnx.gdf_from_place("Salzburg")
geometry place_name
POINT (13.0464806 7.7981346) Salzburg, 5020, Austria
"Salzburg" は都市であると同時に州でもあるため、明確にするために OSM ID をクエリに入れたいと思います。これを行う方法はありますか?