首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用griddata进行均匀网格和离散点之间的相互

文章目录 1 griddata函数介绍 2 离散点到均匀网格 3 均匀网格到离散点 4 获取最近邻的Index 操作非常常见,数学思想也很好理解。...常见的一维很容易实现,相对来说,要实现较快的二维,比较难以实现。这里就建议直接使用scipy 的griddata函数。...det_grid,det_grid), np.arange(lat_min,lat_max+det_grid,det_grid)) #step3:进行网格...3 均匀网格到离散点 在气象上,用得更多的,是将均匀网格的数据到观测站点,此时,也可以逆向使用 griddata方法;这里就不做图显示了。...使用griddata进行 inputs: all_data,形式为:[grid_lon,grid_lat,data] 即[经度网格,纬度网格,数值网格] station_lon: 站点经度 station_lat

1.9K11

关于WRF站点的二三事

前言 很多时候我们需要拿模拟数据和站点图作对比,那就需要把模拟数据到站点 今天来尝试两种WRF数据到站点的方法并使用meteva进行简单绘图 方法一:xesmf库重使用meteva进行双线性到站点...方法二:proj+scipy重使用meteva进行最临近到站点 import meteva.base as meb import matplotlib.pyplot as plt #由于meteva...our_lons, our_lats = pyproj.transform(wrf_proj, wgs_proj, xx, yy) # 进行网格 z_target_grid = griddata...,xesmf无疑是更简单的,并且后直接是xarray数组省去一步。...因为使用方法不同就不作比较了,xesmf和griddata都有几种方法,感兴趣的读者可自行探索。 实际上在meteva的使用了两种:最临近与双线性。效果好坏还需大家自行试验。

8910
您找到你想要的搜索结果了吗?
是的
没有找到

如何使用Java8 Stream APIMap按键或进行排序

在这篇文章中,您将学习如何使用JavaMap进行排序。前几日有位朋友面试遇到了这个问题,看似很简单的问题,但是如果不仔细研究一下也是很容易让人懵圈的面试题。所以我决定写这样一篇文章。...使用Streams的sorted()方法进行排序 3....最终将其返回为LinkedHashMap(可以保留排序顺序) sorted()方法以aComparator作为参数,从而可以按任何类型的Map进行排序。...如果Comparator不熟悉,可以看本号前几天的文章,有一篇文章专门介绍了使用ComparatorList进行排序。...四、按Map的排序 当然,您也可以使用Stream API按其Map进行排序: Map sortedMap2 = codes.entrySet().stream(

6.6K30

xarray系列|WRF模式前处理和后处理

,关于xarray方法的介绍官方文档已经给的比较详细了,也有公众号推送过相关文章 xarray指南: 基于xarray的气象场站点和格点,所以xarray部分就不单独说了。...WRF模式前处理 WRF模式后处理 数据提取 投影转换 可视化 本文除了xarray之外,主要使用了 salem 和 xesmf 这两个库,salem 主要是进行前处理和部分后处理操作,xesmf...投影转换 一般情况下是不需要进行投影转换的,除非在需要和其它投影的数据进行对比分析。这里我们使用 xesmf 进行网格的转换。...如果要应用到其它变量还需要进行调整。这部分算是很久以前立的flag,看这篇 网格气象场-NCL版,拖了一年多这次就在这里填上了... 上述投影转换也可以理解成是一种。...这里也可以使用 xarray 自带的方法进行,或者使用 salem 提供的函数进行,比如 .wrf_zlevel 进行垂直: ds.isel(time=1).salem.wrf_zlevel

3.3K61

xarray系列|WRF模式前处理和后处理

,关于xarray方法的介绍官方文档已经给的比较详细了,也有公众号推送过相关文章 xarray指南: 基于xarray的气象场站点和格点,所以xarray部分就不单独说了。...WRF模式前处理 WRF模式后处理 数据提取 投影转换 可视化 本文除了xarray之外,主要使用了 salem 和 xesmf 这两个库,salem 主要是进行前处理和部分后处理操作,xesmf...投影转换 一般情况下是不需要进行投影转换的,除非在需要和其它投影的数据进行对比分析。这里我们使用 xesmf 进行网格的转换。...如果要应用到其它变量还需要进行调整。这部分算是很久以前立的flag,看这篇 网格气象场-NCL版,拖了一年多这次就在这里填上了... 上述投影转换也可以理解成是一种。...这里也可以使用 xarray 自带的方法进行,或者使用 salem 提供的函数进行,比如 .wrf_zlevel 进行垂直: ds.isel(time=1).salem.wrf_zlevel

4.8K66

用Python复现一篇Nature的研究: 1.数据下载及预处理

所涉及Python库有 wget , matplotlib , numpy ,xarray , pytorch 等一系列在深度学习以及气象数据处理中经常使用的函数库,希望这篇文章能够大家有所帮助。...本文简介 看完这篇博文,你将了解 Python 下载CMIP数据、下载SODA、ERSSTV5、GODAS以及相关的预处理,比如统一时间、、距平计算、滑动平均计算。...数据下载与预处理 由于神经网络预训练数据需要cmip模式数据,训练、验证时需要观测数据,因此我们首先需要数据进行下载。...使用 TosArray.interp(lat=lat, lon=lon),输入指定的网格和维度即可,默认为线性,我们这里成5*5的网格。...190:240].mean(dim=["lat", "lon"]) # 计算3月滑动平均 Nino34I = Nino34I.rolling(time=3, center=True).mean() # 成需要的网格

1.2K32

回旋镖!meteva也能绘制wrfout气象要素分布

前言 博主在早期meteva的使用写了一个笔记,就是meteva,这可能是气象萌新最需要的python库 在使用中发现它不能对有兰伯特投影的wrfout数据直接绘图,所以使用了其他库进行重新网格再绘图...今天在逛meteva的showdoc时刷新出了一个官方教程,大体是将wrfout数据转为pandas格式 然后使用idw进行绘图 下面让我们开始实践吧 温馨提示 由于可视化代码过长隐藏,可点击回旋镖...= meb.interp_sg_idw(sta,grid = grid,nearNum=4,effectR=20) # 将站点数据网格上 print(grd1) <xarray.DataArray...,这里为500hPa target_plev = 500.0 # in hPa # 获取模型中的气压数据,这是进行所必需的 pressure = getvar(ncfile, 'P') # 使用...grd1 = meb.interp_sg_idw(sta1,grid = grid,nearNum=4,effectR=20) # 将站点数据网格上 print(grd1) <xarray.DataArray

9010

用Python复现一篇Nature的研究: 1.数据下载及预处理

所涉及Python库有 wget , matplotlib , numpy ,xarray , pytorch 等一系列在深度学习以及气象数据处理中经常使用的函数库,希望这篇文章能够大家有所帮助。...本文简介 看完这篇博文,你将了解 Python 下载CMIP数据、下载SODA、ERSSTV5、GODAS以及相关的预处理,比如统一时间、、距平计算、滑动平均计算。...数据下载与预处理 由于神经网络预训练数据需要cmip模式数据,训练、验证时需要观测数据,因此我们首先需要数据进行下载。 ?...使用 TosArray.interp(lat=lat, lon=lon),输入指定的网格和维度即可,默认为线性,我们这里成5*5的网格。...190:240].mean(dim=["lat", "lon"]) # 计算3月滑动平均 Nino34I = Nino34I.rolling(time=3, center=True).mean() # 成需要的网格

2.1K52

wrf-python 详解之如何使用

wrf-python中有算法会对缺省数组进行检查,但是当你编译模块时,如果模块代码中使用了wrf-python,那么就要小心了,应尽量避免出现上述情况。...垂直剖面 wrf.vertcross 函数可以用来创建垂直剖面图。为了定义垂直剖面,需要指定剖面的起始和终止点。当然,也可以提供中心点和角度来进行剖面。...2D场到一条线 使用 wrf.interpline 函数可以沿着一条线2D场进行,这类似3D场的垂直剖面。为了定义的线,可以是线的起始和终止点。...当然,也可以提供中心点和角度来进行剖面。可以使用 wrf.CoordPair 对象指定起始,终止或中心点。坐标点也可以是 (x, y) 网格点或是经纬度坐标点。...这三种绘图系统,当使用 xarray 时通过变量可直接确定地图对象,如果没有使用 xarray,可从 WRF 输出文件获取。 还包括直接从 xarray 切片中获取地理边界的函数。

19.4K1012

工具推荐|XGCM-大气环流模式后处理工具

XGCM 是一个python包,用于处理由数值大气环流模型(GCMs)和类似网格数据集产生的数据集,这些数据集可以进行有限体积分析。...在这些数据集中,不同的变量位于不同的位置,相对于一个体积或面元素(如单元中心,单元面等) XGCM 解决了如何和差异这些变量从一个位置到另一个问题。...XGCM 使用并生成 xarray 数据结构,这是多维数组数据的坐标和元数据丰富的表示形式。...Xarray 是以多种方式分析 GCM 数据的理想工具,它提供了方便的索引和分组、坐标感知的数据转换以及(通过 dask)并行、核外数组计算。...除此之外,XGCM 增加了有限体积荒川网格的理解,这种网格通常用于海洋和大气模型以及适合这些网格的微分和积分操作符。 XGCM 的动机是海洋,大气和气候模型的数值分辨率的快速增长。

54810

WRF如何转换投影+模拟台风路径可视化

具体使用哪种方法应根据数据特点和需求进行选择 1.3 加入pyproj投影转换后griddata的多种方式对比 In [4]: import pyproj import numpy as np...xesmf的多种进行转换对比 import xesmf as xe import xarray as xr import matplotlib.pyplot as plt import numpy...Patch(patch): 优点:Patch 是一种多步骤的方法,通过将目标区域分成多个小块并进行,可以更好地处理不规则网格和不连续数据。它能够提供较高的精度。...最近邻(nearest_s2d): 优点:最近邻是一种简单快速的方法,它直接使用最近的一个源网格点的进行,不涉及其他计算。...反转最近邻(nearest_d2s): 优点:反转最近邻是最近邻的一种变体,它根据目标网格上离坐标更近的源网格点来进行

8410

wrf-python 详解之API

当然,大多数时候我们仅需要wrf-python已经提供的诊断函数和其它可调用函数,可能都不会使用到这些API。...用户API 方法 诊断 从WRF输出中返回基本诊断变量 返回3D场到2D平面(指定垂直层)的 坐标转换 返回经纬度坐标对应的X,Y坐标 网格去栅格 返回去栅格化后的变量,与NCL中的wrf_user_unstagger...原始诊断方法 返回2D网格中一个线上的x,y点 配置方法 如果安装并打开了 xarray 则返回 True 其他 如果输入变量名是时间坐标则返回 True 类 异常 当诊断过程中发生错误是触发异常 CoordPair...类 存储 (x, y) 或 (lat, lon) 坐标的类 CoordPairs 方法 返回 (latitude, longitude) 坐标字符串 GeoBounds 类 存储地理边界的类 Projection...装饰器 算法装饰器 从封装函数输出进行单位转换的装饰器 元数据装饰器 为封装函数的输出设置元数据的装饰器 装饰器工具 确定文件中包含哪个变量的可调用类 类 可迭代封装器类 一个生成器和自定义可迭代类的封装类

2.2K11

xarray走向netCDF处理(三):与掩膜

对于xarray之前已经介绍过两期了,分别是数据结构及数据读取和数据索引。 这一期要介绍的功能是与掩膜。 这两个方法在数据处理中会经常用到,实用等级☆☆☆☆☆。... xarrayscipy的函数进行了进一步的封装,可以让我们方便的调用。 只需要对DataArray,DataSet使用interp()函数就可以实现值了,就像索引一样简单。...这里主要想说的是另一种方法,直接对数据进行处理,把海洋或者陆地区域的设为缺测。...任意的DataArray或者Dataset创建一个新的坐标,将海陆数据附给他。 根据海陆分布数据中海洋或者陆地的来提取掩膜数据。...landsea = xr.open_dataset('landsea.nc') landsea = landsea['LSMASK'] # --ds和地形数据分辨率不一致,需将地形数据

8.2K64

xarray走向netCDF处理(三):与掩膜

以下文章来源于MeteoAI ,作者学前班大队长 对于xarray之前已经介绍过两期了,分别是数据结构及数据读取和数据索引。 这一期要介绍的功能是与掩膜。... xarrayscipy的函数进行了进一步的封装,可以让我们方便的调用。 只需要对DataArray,DataSet使用interp()函数就可以实现值了,就像索引一样简单。...这里主要想说的是另一种方法,直接对数据进行处理,把海洋或者陆地区域的设为缺测。...任意的DataArray或者Dataset创建一个新的坐标,将海陆数据附给他。 根据海陆分布数据中海洋或者陆地的来提取掩膜数据。...landsea = xr.open_dataset('landsea.nc') landsea = landsea['LSMASK'] # --ds和地形数据分辨率不一致,需将地形数据

1.5K133

库|分享一些python库

这个库类似pandas,但是为了能够更容易的进行地理数据处理而设计。GeoPandas扩展了pandas的数据类型,从而允许几何类型的空间操作。...说到地理数据操作,也应该提及xarray库,尤其是对于地球科学中的高维数据表示来说,这个库是非常适宜了。xarraypandas有很好的支持。 之前也专门写过xarray库的介绍。...xarray | 数据结构(1) xarray | 数据结构(2) xarray | 数据结构(3) xarray | 索引及数据选择 Iris 强大的地球科学数据分析及可视化库,其可视化接口基于matplotlib...python-geotiepoints 将地理连测点数据或者外推到地理网格。如果只有低分辨率格点数据,想得到高分辨率格点数据时,这就显得非常有用了。 这次就先介绍这些,碰到好的库会再分享。

96510

meteva,这可能是气象萌新最需要的python库

不管你是要进行数据筛选、、格点场计算还是统计分析,meteva库都提供了一系列酷炫的方法和工具,满足你的各种需求。...案例:1.1 站点数据读取:以micaps3类数据为例 1.3 格点数据读取:以era5的nc数据为例 1.7 grib 数据处理简单流程:使用era5 girb格式为例 数据操纵 如何进行气象数据的操作...案例 :2.1 测试wrfout可视化:使用xesmf重使用meteva可视化wrfout数据 案例 :2.2 nc网格数据站点三步走:meteva读取nc数据并到气象站点 数据可视化 如何绘制站点数据图...xesmf重使用meteva可视化wrfout温度数据 直接使用meteva读取是不行的,当前不支持兰伯特投影 2.1.1 读取wrfout数据 xarray as xr wrffile = "/...In [29]: #进行 t_new = regridder(ds_wrf.T[0,0]) t_new.plot() <matplotlib.collections.QuadMesh at 0x7f0c70319150

39010

背向NCL,面向对象

首先这不是一篇告诉你如何抛弃NCL的推送,而是告诉你如何更好的使用Python! 作为曾经地球科学领域最炙手可热脚本语言之一的NCL已经进入维护模式,不再更新。...NCAR将使用Python作为地球科学领域的主要数据处理和可视化工具。 NCARNCL进行了“封装”,构成了PyNGL和PyNIO,随后可能还会开发一款工具,囊括NCL中大多数函数。...如果要对空间数据进行,可能就无法满足了。...数据 •xESMF和ESMPy:气象数据空间,尤其是对于模式网格数据而言,提供了一些便捷的命令可对网格数据进行一些列操作•python-stratify:针对大气和海洋数据进行垂直•scipy.interpolate...模块提供了大量函数•python-geotiepoints:针对地理网格数据的空间 说到地球科学领域的数据处理,最离不开的应该也是模式输出数据了。

2.4K32

Python绘制垂直剖面流线图教程

核心是定义一个名为myStreamPlot的函数,它将经纬度和风速数据转换为流线图,利用三重网格确保准确性。 首先设置好坐标轴范围与刻度,以等高线形式呈现风切变率。...然后调用myStreamPlot函数,经度、纬度、东西风向分量u、南北风向分量v以及垂直风速w_clm进行预处理,并调整单位便于理解。通过streamplot绘制出清晰易懂的全球风场流线图。...(x, y) # 创建x和y网格 lon, lat = np.meshgrid(lon, lat) # 创建输入经度和纬度的网格 lon = lon.flatten...和v分量进行处理到网格上 gu = griddata((lon, lat), u, (xi, yi), method='cubic') gv = griddata((...lat[::2], lev, v_clm[:, ::2], -w_clm[:, ::2]*100, color='k', density=2.5) # 显示图形 plt.show() 在以上代码中我风数据作了翻转后再处理

12310
领券