Если вам нужно только добавить простую стрелку, вы можете также рассмотреть метод annotate()
.
import geopandas as gpd
import matplotlib.pyplot as plt
gdf = gpd.read_file(gpd.datasets.get_path('nybb'))
fig, ax = plt.subplots(figsize=(6, 6))
gdf.plot(ax=ax)
x, y, arrow_length = 0.5, 0.5, 0.1
ax.annotate('N', xy=(x, y), xytext=(x, y-arrow_length),
arrowprops=dict(facecolor='black', width=5, headwidth=15),
ha='center', va='center', fontsize=20,
xycoords=ax.transAxes)
![enter image description here](https://i.stack.imgur.com/EsGqs.png)
Примечания. Когда вы передаете xycoords=ax.transAxes
, координаты x, y нормализуются, а x, y = 0.5, 0.5
означает, что вы положили стрелку в середину карты.