次の GeoDataFrame があるとします。
h=pd.DataFrame({'zip':[19152,19047],
'Lat':[40.058841,40.202162],
'Lon':[-75.042164,-74.924594]})
crs='none'
geometry = [Point(xy) for xy in zip(h.Lon, h.Lat)]
hg = GeoDataFrame(h, crs=crs, geometry=geometry)
hg
Lat Lon zip geometry
0 40.058841 -75.042164 19152 POINT (-75.042164 40.058841)
1 40.202162 -74.924594 19047 POINT (-74.924594 40.202162)
別の GeoDataFrame で行ったように (このように) CRS を設定する必要があります。
c=c.to_crs("+init=epsg:3857 +ellps=GRS80 +datum=GGRS87 +units=mi +no_defs")
私はこれを試しました:
crs={'init': 'epsg:3857'}
この:
hg=hg.to_crs("+init=epsg:3857 +ellps=GRS80 +datum=GGRS87 +units=mi +no_defs")
...しかし、運が悪い。
いくつかの重要な注意事項:
上記の .to_crs メソッドが機能するもう 1 つの GeoDataFrame はシェープ ファイルからのもので、ジオメトリ列はポイントではなくポリゴン用でした。.to_crs メソッドが適用された後の「ジオメトリ」値は次のようになります。
POLYGON ((-5973.005380655156 3399.646267693398... hg GeoDataFrame で上記を試しても、通常の緯度/経度座標のように見えます。
これがうまくいった場合は、これらのポイントをポリゴン GeoDataFrame と連結して、両方 (ポリゴンの上のポイント) をプロットします。
.to_crs メソッドを使用する前に最初に GeoDataFrames を連結してから、ポイント行とポリゴン行の両方で一度にメソッドを使用すると、次のエラーが発生します。
ValueError: 単純なジオメトリを変換できません。最初にオブジェクトに crs を設定してください。
前もって感謝します!