gpt4 book ai didi

python - 如何在 geopandas map 上添加 "North Arrow"

转载 作者:行者123 更新时间:2023-12-04 00:24:15 25 4
gpt4 key购买 nike

我使用 geopandas 创建了一张 map ,但我无法在 map 上添加“指北针”。

创建 map 后,我尝试使用 matplotlib.image 模块添加“指北针”并尝试了不同的方法(参见下面的示例),但没有一个提供好的结果。我正在寻找更好的代码,可以在 map 上添加一个好的“指北针”

import matplotlib.image as img

from matplotlib.offsetbox import TextArea, DrawingArea, OffsetImage,
AnnotationBbox

im=img.imread(r'C:\Users\jnisengw\Dropbox\2019\Data
Science\QGIS\north_arrow1.png')

imagebox = OffsetImage(im,zoom=0.27)

ab = AnnotationBbox(imagebox, (598500,4699000))

ax.add_artist(ab)

最佳答案

如果只需要添加一个简单的箭头,还可以考虑annotate() method .

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

备注:当你通过 xycoords=ax.transAxes ,x,y坐标被归一化, x, y = 0.5, 0.5意味着您将箭头放在 map 的中间。

关于python - 如何在 geopandas map 上添加 "North Arrow",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58088841/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com