我正在测试 geopandas 库以进行一个简单的练习:在地图上显示几个点,然后在上面叠加一个大圆圈以使用差异方法删除其中的一部分。
为了检查转换是否正常,我使用 iPython 笔记本来查看我的不同层。
所以,这是我操作的开始:
%matplotlib inline
# this line is just for a correct plotting in an iPython nb
import pandas as pd
import geopandas as gp
from shapely.geometry import Point
df = pd.read_csv("historical_monuments.csv", sep = ",")
geometry = [Point(xy) for xy in zip(fichier.Longitude, fichier.Latitude)]
# I convert two columns of my csv for geographic information displaying
df = df.drop(['Longitude', 'Latitude'], axis = 1)
# just delete two columns of my first df to avoid redundancy
geodf = gp.GeoDataFrame(file, crs=None, geometry=geometry)
然后,为了看到我的观点,我只写了:
geodf.plot(marker='o', color='red', markersize=5)
结果如下:
那太好了。现在我只想在这一层中添加一个半径较大的点。我试过这个:
base = gdf.plot(marker='o', color='red', markersize=5)
# the first plotting becomes a variable to reuse it
center_coord = [Point(6.18, 48.696000)]
center = gp.GeoDataFrame(crs=None, geometry=center_coord)
circle = center.buffer(0.001)
然后,我只是认为这些命令就足够了:
circle.plot(ax=base, color = 'white')
但我的笔记本不是图形显示,而是返回:
<matplotlib.axes._subplots.AxesSubplot at 0x7f763bdde5c0>
<matplotlib.figure.Figure at 0x7f763be5ef60>
到目前为止,我还没有发现有什么问题......