问题标签 [metpy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
220 浏览

python - COSMO 的 MetPy 和旋转纬度经度网格?

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

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

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

0 投票
1 回答
51 浏览

python - 客观分析程序的平均计算站间距问题

我正在使用 interpolate_to_grid 对俄克拉荷马州 Mesonet 数据运行 Barnes 客观分析程序,该程序从 interpolate_to_points 读取计算的站间距输出。这是使用 ave_spacing = cdist(points, points).mean() 计算的,它似乎计算了每个单独数据点与所有数据点之间的平均距离。结果,当相邻站点之间的实际平均间距为 30-40 公里时,我得到的平均站间距约为 228 公里。我希望能够在客观分析过程中更改此值,而无需筛选所有不同的依赖项。

0 投票
0 回答
141 浏览

metpy - 计算可降水量

我在如何使用metpy的一些命令计算可降水量方面遇到问题。这是我到目前为止的代码:

已编辑

“变量”为我的数据调用 WRF 模型。“tpw”代表总可降水量,这是我试图计算的。

0 投票
1 回答
335 浏览

python - 如何使用 Siphon 和 MetPy 从 netCDF 网格数据集中获取变量的坐标值数组?

我已经使用 Siphon 请求了一个 netCDF 子集,并形成了一个查询来检索边界框中的变量:

我正在寻找一种可靠、简洁的方法来获取该变量坐标的值,特别是时间和垂直水平。一种可行但不切实际的方法是请求并使用整个数据集。

实用但不实用的方法

获取数据

xarray.Dataset使用MetPy 的 xarray 访问器获取数据

从成分中获取坐标轴xarray.DataArray

对于作为 的数据集的每个变量xarray.DataArray,调用ds.VARIABLE.metpy.DIMENSION都会使 MetPy 自动返回适当的坐标变量(无论其名称如何,例如latlontimetime1altitude_above_mslisobaric3height_above_ground1),其中、、和中DIMENSION的一个是。timeverticalxy

获取值

在这种情况下,ds.Absolute_vorticity_isobaric.metpy.time返回ds.timeds.Absolute_vorticity_isobaric.metpy.vertical返回ds.isobaric2。添加.values到调用中只返回numpy.ndarray我一直试图获取的值。因此,调用ds.Absolute_vorticity_isobaric.metpy.time.values会产生以下内容(以下被截断):

调用ds.Absolute_vorticity_isobaric.metpy.time.valuesandds.Absolute_vorticity_isobaric.metpy.vertical.values将只返回 NumPy 数组,这正是我所寻求的。

问题

虽然上面确实做了我想要的,但只运行一个变量就花了将近一分半钟,而且它(我假设)不必要地对 UCAR 服务器征税。有没有办法在没有加载所有数据本身的巨大开销的情况下获得上面的输出?

0 投票
0 回答
97 浏览

metpy - MetPy的Q-Vector例子遇到的问题

我试图在 MetPy 中重现 Q-Vector 示例,并且在应用命令时出现错误:

错误:ValueError:divergence给定参数的单位不正确:u需要“[速度]”但给定“米 ** 2 / 千克/秒”,v需要“[速度]”但给定“米 ** 2 / 千克/秒”。

我不知道如何规避这个问题,因为uqvect并且vqvect必须有单位meter**2/kilogram/second。有任何想法吗?或者 MetPy 代码是否存在一般问题,因为我只是从 MetPy 主页获取代码。

0 投票
1 回答
81 浏览

metpy - 如何计算垂直高度剖面

我想根据 ECMWF 数据计算层厚。

我所拥有的是变量T(在一层内)和relhum(在一层内)和压力(在层界面和层中点处)。

我无法理解函数的pressure参数metpy.calc.thickness_hydrostatic_from_relative_humidity

当我查看文档字符串中给出的公式时,

$$ Z_2 - Z_1 = -\frac{R_d}{g} \int_{p_1}^{p_2} T_v d\ln p $$

在我看来,该函数似乎会返回 LHS,即 $Z_2 - Z_1$。

但是,在我看来,pressure, temperature,relative_humidity论点似乎都必须具有相同的维度。

我觉得这很令人困惑:为了获得 $Z_1$ 和 $Z_2$ 之间的层厚度,我预计还必须输入压力 $p_1$ 和 $p_2$。然而,温度通常被定义为满级,即,我的温度比我的压力少一个。

例如,为了计算底层的厚度,我希望给出表面压力、层顶部压力以及层内的温度(和湿度)。但是当我尝试使用这样的功能时,我得到了

请帮助我了解如何正确使用此功能。

0 投票
1 回答
48 浏览

metpy - #metpy - NEXRAD L3 NCR 数据缩放

我一直在尝试确定如何缩放 NEXRAD NCR 数据。我从产品标题中看到最大值为 63,但在读取数据字典后,数据变量中的最大值为 11。我在联邦气象手册中没有看到任何讨论缩放的信息。我可以使用metpy绘制数据,没问题,但比例尺已关闭。当我使用 NCEI 工具包绘图时,比例是正确的。那么引擎盖下是什么?

谢谢!

玛丽艾伦

0 投票
1 回答
431 浏览

python - Cartopy 正在崩溃谷歌代码实验室

我正在使用 Cartopy 和 Metpy 创建新图形。当我尝试在我的地图上设置范围时使用谷歌代码实验室时:

我收到警告:“几何必须是点或线串”然后我的笔记本崩溃了。我尝试更改 ax.set_extent() 中的值,但仍然遇到“几何必须是点或线串”的相同问题,然后我的笔记本因“未知”原因而崩溃。我使用的数据也是飓风艾尔玛的形状文件。有没有人见过这个问题?感谢您的帮助!

PS我目前住在关岛,所以与美国大陆相比,我可能会在奇怪的时间做出回应。再次感谢你的帮助!

0 投票
1 回答
123 浏览

python - transforming to/from earth relative and grid relative for flow vectors in metpy

I've tried looking through the source code, but there doesn't seem to be support for this in MetPy. For example, I have a set of wind vectors relative to the Earth coordinate system (speed, direction) which I want to transform to (u,v) relative to a grid on a Lambert Conformal projection.

0 投票
1 回答
263 浏览

matplotlib - How to plot a circle with a varying radius in each quadrant?

I'd like to draw a shape similar to the following example (from the Naval Research Laboratory TC page). The shape is defined by 4 radii, one for each quadrant.

sample

I have multiple track centers in latitude and longitude coordinates of which I plot using Basemap: