微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在xarray中显示具有NaN值的Cartopy刻面网格图时发生ValueError

如何解决在xarray中显示具有NaN值的Cartopy刻面网格图时发生ValueError

我正尝试使用具有NaN值的xarray(适用于海域)通过以下代码显示季节性构面网格图:

ds = xr.open_dataset("../data/full_data_monthly_v2018_025.nc")
prKepri = ds['precip'].sel(lat = slice(-0.49,-4.7),lon = slice(103.37,109.1))
data = prKepri.groupby('time.season').mean(dim='time',skipna = False)
proj = ccrs.PlateCarree()
p = data.plot(col = 'season',robust = True,cmap = 'magma_r',col_wrap =2,subplot_kws=dict(projection=proj),transform=ccrs.PlateCarree())
for ax in p.axes.flat:
    ax.coastlines();

然后xarray向我提出一个错误

ValueError: zero-size array to reduction operation minimum which has no identity

我尝试使用skipna = False参数。但是问题仍然存在。 我使用GPCC重新分析数据:https://opendata.dwd.de/climate_environment/GPCC/full_data_2018/full_data_monthly_v2018_025.nc.gz。

我使用xarray v 0.16.0

解决方法

这是matplotlib 3.3.1中的bug,导致CartoPy 0.18出现问题。在发布matplotlib 3.3.2之前,最简单的解决方法可能是安装matplotlib 3.3.0。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。