1

这里有人使用带有旋转纬度经度坐标的 MetPy 吗?可能吗?我想要完成的是制作我的数据的垂直横截面。我用 xr.open_dataset 打开了我的 netCDF 文件:

Dimensions:       (bnds: 2, level: 80, level1: 81, rlat: 127, rlon: 162, srlat: 127, srlon: 161, time: 48)
Coordinates:
  * time          (time) datetime64[ns] 2019-03-07T08:00:00 ... 2019-03-07T19:45:00
    lon           (rlat, rlon) float32 ...
    lat           (rlat, rlon) float32 ...
    slonu         (rlat, srlon) float32 ...
    slatu         (rlat, srlon) float32 ...
    slonv         (srlat, rlon) float32 ...
    slatv         (srlat, rlon) float32 ...
  * rlon          (rlon) float64 -1.385 -1.375 -1.365 ... 0.205 0.215 0.225
  * rlat          (rlat) float64 -0.995 -0.985 -0.975 ... 0.245 0.255 0.265
  * srlon         (srlon) float64 -1.38 -1.37 -1.36 -1.35 ... 0.19 0.2 0.21 0.22
  * srlat         (srlat) float64 -1.0 -0.99 -0.98 -0.97 ... 0.23 0.24 0.25 0.26
Dimensions without coordinates: bnds, level, level1
Data variables:
    time_bnds     (time, bnds) datetime64[ns] ...
    rotated_pole  int32 ...
    vcoord        (level1) float32 ...
    TOT_PREC      (time, rlat, rlon) float32 ...
    TOT_PR        (time, rlat, rlon) float32 ...
    SNOW_GSP      (time, rlat, rlon) float32 ...
    PRS_GSP       (time, rlat, rlon) float32 ...
    GRAU_GSP      (time, rlat, rlon) float32 ...
    PRG_GSP       (time, rlat, rlon) float32 ...
    PRR_GSP       (time, rlat, rlon) float32 ...
    RELHUM        (time, level, rlat, rlon) float32 ...
    U             (time, level, rlat, srlon) float32 ...
    V             (time, level, srlat, rlon) float32 ...
    W             (time, level1, rlat, rlon) float32 ...
...

当我解析然后数据集时,我收到以下错误:KeyError:'perspective_point_height'。由于某种原因,坐标中没有高度或水平,我想解析函数然后找不到任何高度坐标?如何将垂直水平添加到坐标?

我还使用了一个数据集,其中在坐标中指定了高度,但是当我尝试进行 cross_section 时,我得到以下信息:ValueError:未处理的投影:rotated_latitude_longitude。有没有一种方法可以让 MetPy 使用旋转的极坐标?

4

1 回答 1

0

错误perspective_point_height是因为(我假设)数据将投影声明为地球静止,但它没有该属性......这似乎很奇怪。

使用Unhandled projection error,那只是因为 MetPy 没有将该投影添加为它可以理解并可以转换为 CartoPy 的投影。

在这两种情况下,似乎 MetPy 可以更好地处理这个问题,你能在MetPy 的问题跟踪器上打开一个错误吗?根据数据中究竟发生了什么,我们可能会为您指出一些解决方法。

于 2019-11-08T04:21:23.963 回答