在 xarray 图上方绘制底图

时间:2021-05-21 13:30:17

标签: python python-xarray matplotlib-basemap

我有一个 xarray 数据集 clip_ds,并使用 plot 可视化了数据数组。现在,我想使用底图的 drawcountries() 添加一个国家边界。显然,我在底图中使用的范围有问题(我猜),但国家边界和数据图不会一起显示。我尝试在创建底图之前和之后交换 clip_ds.pr[0].plot() 的位置,它给了我两种不同的结果,如下所示:

  1. Xarray PLOT BEFORE BASEMAP(注意 xarray 图中的颜色条仍然存在)
  2. Xarray PLOT AFTER BASEMAP(注意与 3 的区别,这里的绘图高度缩小,刻度标签消失,可能与底图重叠。)
  3. Xarray plot only

使用 map.readshapefile 加载单独的 shapefile 也会出现同样的问题。我知道使用 cartopy 可能有办法解决这个问题,但我喜欢底图功能,想知道是否有任何解决方案。

map=Basemap(projection='merc',     
               resolution='l',
               llcrnrlon=clip_ds.lon[0],
               llcrnrlat=clip_ds.lat[0],
               urcrnrlon=clip_ds.lon[-1],
               urcrnrlat=clip_ds.lat[-1])
map.drawcountries()
clip_ds.pr[0].plot()
plt.show()

0 个答案:

没有答案
相关问题