Die*_*ego 6 python pandas geopandas
我正在尝试使用 geopandas 在地图上绘制一些信息。我做的第一件事是上传纽约市的形状文件:
nyc_boroughBoundaries = geopandas.read_file ("nybb_19b2")
Run Code Online (Sandbox Code Playgroud)
这将返回一个地理数据框:
type (nyc_boroughBoundaries)
geopandas.geodataframe.GeoDataFrame
Run Code Online (Sandbox Code Playgroud)
并且有一个几何列:
geometry
(POLYGON ((1012821.805786133 229228.2645874023...
(POLYGON ((970217.0223999023 145643.3322143555...
(POLYGON ((1029606.076599121 156073.8142089844...
Run Code Online (Sandbox Code Playgroud)
我正在重复相同的过程来加载有关纽约市新建筑的一些信息
geo_df_NB_2018["Coordinates"]
POINT (40.62722 -73.969634)
POINT (40.764575 -73.955421)
POINT (40.525584 -74.166414)
POINT (40.742845 -73.89083100000001)
POINT (40.679859 -73.93992
Run Code Online (Sandbox Code Playgroud)
然后我尝试在一张地图中绘制两个地理数据框,执行以下操作:
fig, ax = plt.subplots (figsize = (15,15))
geo_df_NB_2018.plot(ax = ax, alpha = 0.7, color = "pink")
nyc_boroughBoundaries.plot(ax = ax)
Run Code Online (Sandbox Code Playgroud)
然而,它们显示在图中的不同部分。
谢谢!
你们有不同的预测。它们必须相同才能绘制在一起。看看你的坐标,它们明显不同。此外,正如@steven 指出的,你已经切换了纬度和经度。首先修复该问题,然后重新投影:
# convert CRS to the same as nyc_boroughBoundaries has
geo_df_NB_2018 = geo_df_NB_2018.to_crs(nyc_boroughBoundaries.crs)
fig, ax = plt.subplots(figsize=(15, 15))
geo_df_NB_2018.plot(ax=ax, alpha=0.7, color="pink")
nyc_boroughBoundaries.plot(ax=ax)
Run Code Online (Sandbox Code Playgroud)