有人能帮我找出使用cartopy时的错误信息吗?
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.axes_grid.inset_locator import inset_axes
import cartopy.crs as ccrs
import cartopy.io.img_tiles as cimgt
import windrose
ws = np.random.random(500) * 6
wd = np.random.random(500) * 360
minlon, maxlon, minlat, maxlat = (6.5, 7.0, 45.85, 46.05)
proj = ccrs.PlateCarree()
fig = plt.figure(figsize=(12, 6))
# Draw main ax on top of which we will add windroses
main_ax = fig.add_subplot(1, 1, 1, projection=proj)
main_ax.set_extent([minlon, maxlon, minlat, maxlat], crs=proj)
main_ax.gridlines(draw_labels=True)
main_ax.coastlines()
request = cimgt.OSM()
main_ax.add_image(request, 12)
我收到的错误是ValueError: A non-empty list of tiles should be provided to merge.
,似乎找不到问题所在。
发布于 2021-07-22 14:07:29
您的请求被OSM服务器拒绝。要解决这个问题,您需要使用此link中演示的image_spoof()
。
有了image_spoof()
,你的相关代码应该是:-
# reformat web request for street map spoofing
cimgt.OSM.get_image = image_spoof
# continued with your code
request = cimgt.OSM() # spoofed
https://stackoverflow.com/questions/68468057
复制相似问题