我想绘制使用cartopy在AzimuthalEquidistant投影上的一些数据。但是,它给了我几个问题。首先海岸线不再显示这种类型的投影。不知道这是我的代码还是Cartopy问题。我还注意到,如果我在pcolormesh命令中使用ccrs.PlateCarree()转换,海岸线确实会显示,但据推测,我的数据是错误类型的预测?Cartopy Azimuthal等距投影:放大到一个区域和海岸线
第二,如果绘制数据后轴边界是圆形的,是否可以使用set_extent或类似的函数来做到这一点? 下面的代码应该重现问题,圆圈显示了我希望寄宿生的样子。
import matplotlib.pyplot as plt
import cartopy.crs as ccrs
import matplotlib.patches as mpatches
clat = 55.0
clon = -8.0
lons = np.arange(clon-15,clon+16,0.5)
lats = np.arange(clat-15,clat+16,0.5)
d = np.random.rand(lons.shape[0],lats.shape[0])
trans = ccrs.AzimuthalEquidistant(central_latitude=clat, central_longitude=clon)
ax = plt.axes(projection=trans)
ax.coastlines(resolution='10m')
CB=ax.pcolormesh(lons-0.25, lats-0.25, d.T,
cmap=plt.cm.viridis, alpha=0.5,
transform=trans)#ccrs.PlateCarree())
p1 = mpatches.Circle((clon,clat), radius=15, color='k', lw=5, fill=False,
transform=trans)
ax.add_patch(p1)