Go语言计算两个经度和纬度之间的距离 package main import ( "fmt" "math" ) func main() { lat1 := 29.490295
php代码:转载 http://www.cnblogs.com/caichenghui/p/5977431.html 1 /** 2 * 求两个已知经纬度之间的距离,单位为米 3 * 4...* @param lng1 $ ,lng2 经度 5 * @param lat1 $ ,lat2 纬度 6 * @return float 距离,单位米 7 * @author www.Alixixi.com
(这是和大气环流一般自西向东相匹配的,所以时间经度图比较少见)。...文件为.nc格式,需要使用Python中的netCDF4或者xarray库包来读取。...lon=f['x'][:]#将文件中的x变量赋值为经度 lat=f['y'][:]#赋值为纬度 height=f['z'][:]#将z变量赋值为高度 fig=plt.figure(figsize=(10,9...显然是不需要的,我们只想知道沿某个经度(或纬度)的地形变化如何,用ax.plot命令结合fill_between命令即可。而这两个命令,只需要传入一个一维的横坐标,和一维的纵坐标即可。...可能大家目前最需要的是解决在win上读grib2问题,笔者暂时还不能给出满意的解答,气象家园已有xarray配合eccodes和cfgrib或者李开元老师的方法wgrib转换方法,大家可以参考。
为了在地图上叠加矢量图,必须告诉矢量图它在地图上的位置(以纬度/经度度数为单位)。...= lon # 设置经度坐标数组,用于指定矢量的X轴位置 vcres.vfYArray = lat # 设置纬度坐标数组,用于指定矢量的Y轴位置 # 设置地图投影和填充颜色 vcres.mpProjection..."# 设置内陆水域的填充颜色为 "SkyBlue" vcres.mpLimitMode = "LatLon"# 设置地图范围模式为经纬度模式 vcres.mpCenterLonF = -80.0# 设置地图中心的经度为...-80.0 度 vcres.mpCenterLatF = 55# 设置地图中心的纬度为 55 度 vcres.mpMinLatF = 60# 设置地图的最小纬度为 60 度 vcres.mpDataBaseVersion...发展起来的当下,我们可以选择熟悉的xarray库读取数据,而不是使用pynio 反正填入绘图函数的参数numpy也可 xarray读取 import xarray as xr import numpy
索引核心方法 在xarray的官方文档中给出了如下几种索引方式 索引演示 对如下数据进行索引演示:名为ds的DataSet,名为temp的DataArray,数据链接在文末。...根据位置索引 位置索引是最直接也是最简单的索引方式,但是位置索引只对DataArray有效,对DataSet无效。下面用两种不同方法获取相同的值。 1....对DataArray和DataSet都有效,且方法一致。...gl.ylabels_right = False #关闭右侧的经纬度标签 gl.xformatter = LONGITUDE_FORMATTER #x轴设为经度的格式 gl.yformatter...= LATITUDE_FORMATTER #y轴设为纬度的格式 return fig, ax 对数据中感兴趣的区域进行提取并简单的可视化。
如果你生活在北半球,就平均而言,南方地区常比北方地区更暖、更湿,所以说不同地方的温度、湿度不是一样的;同时地球上的位置通常是用经纬度来表示的,比如北京中心的经纬度为116°20′E, 39°56′N;因而为了描述温度...” 这就造成了一个麻烦的事情。对于实际生活中的经纬度,纬度一般是从90°S至90°N(-90°N~90°N),经度一般是从0°~360°。这两个数组并不吻合。怎么办?...应用数学中映射的思想,将Python中的数组和现实生活中的坐标联系起来。 比如将实际位置(0°,-90°N)即(0°,90°S)映射为Python中的数组(0,0)。...添加维度名字“x”和“y”。 添加数组名称“My random array” 分别对“x”和“y”维度添加坐标“longtitude”(经度)和“latitude”(纬度)。...;经度从-180至180,步长为1;纬度从-90至90,步长为1。
今天要介绍的就是xarray的索引功能,通过索引你可以对数据进行切片,从整体中提取你所关注的区域、高度或者时间。 索引核心方法 在xarray的官方文档中给出了如下几种索引方式 ?...根据位置索引 位置索引是最直接也是最简单的索引方式,但是位置索引只对DataArray有效,对DataSet无效。下面用两种不同方法获取相同的值。 1....对DataArray和DataSet都有效,且方法一致。...gl.ylabels_right = False #关闭右侧的经纬度标签 gl.xformatter = LONGITUDE_FORMATTER #x轴设为经度的格式 gl.yformatter...= LATITUDE_FORMATTER #y轴设为纬度的格式 return fig, ax 对数据中感兴趣的区域进行提取并简单的可视化。
接下来将使用公众号其他成员分享的内容现学现卖一篇,文章中使用了我们公众号成员推荐的Xarray库、wrf-python库,目的是从WRF模式输出提取出站点在不同高度/等压面数据。...实际上也可以用scipy.spatial中的cKDTree来做。...:',ind) print('距离站点最近格点的经度为:',XLONG_WRF2D[ind[0],ind[1]]) print('距离站点最近格点的纬度为:',XLAT_WRF2D[ind[0],ind...[1]]) 距离该站点最近的格点经纬度索引为: (96, 93) 第一个站点的经度为: 133.04703 第一个站点的纬度为: 18.168343 注:站点经纬度坐标是随便写的,以脱敏,如有雷同,..., 站点纬度, 最近格点经度索引,最近格点纬度索引 features_3D :wrfout中三维变量,如u,v,T features_2D : wrfout中的二维变量: 如降雨 、短波辐射
多番比对,选用xarray,解查安抚,化繁为简,最为称心。 说人话就是,经学前班大队长亲测利用Python中的xarray库处理nc数据非常方便。...提取物理量 从文件中读取数据ds = xarray.open_dataset() 假如数据中含有一个名为var的物理量可以通过ds.var或ds[var]来获取 实例 此处使用的是ERA-Interim..._2018.nc') # ds的类型为Dataset,里面包含u10,v10,t2m三个物理量,每个物理量都有经度、纬度、时间三个坐标系 >>>ds xarray.Dataset> Dimensions...# 取出ds中名为t2m的物理量,可以看到它的维度,坐标系,以及t2m有单位和名字两个属性 >>>ds['t2m'] xarray.DataArray 't2m' (time: 12, latitude...可以清晰的了解nc数据中的维度、坐标、物理量以及各种属性等信息。
利用griddata进行插值 griddata函数讲解 第一步:导入相关库 第二步:给出插值到的经纬度信息(目标经纬度) 第三步:待插值数据 第四步:插值 汇总成函数 结果对比 插值前(10km) 插值后...(1km) 因为最近在做算法优化,所以对数据统一性有一定要求,在最近的研究中主要用一个简单的最近邻插值对数据集进行降尺度处理。...# 辐射数据经度 (641,) rad_lat = rad.lat.values # 辐射数据纬度 (394,) rad_LON, rad_LAT = np.meshgrid(rad_lon,rad_lat...:maskpath: 需要插值到对应数据的数据路径 :mask_lon: 标准数据的经度名称,比如:x,lon :mask_lat: 标准数据的纬度名称,比如:y,lat :inputpath: 需要做插值处理的...nc文件所在的目录 :outputpath: 插值完nc文件保存的路径,注意要是'/' :data_lon: 需要做插值数据经度名称,比如:'x','lon' :data_lat: 需要做插值数据经度名称
,会出现个三角形,点击查看即可 前言 之前的文章中,有朋友提出水汽通量散度剖面图怎么画,那么我们来探索一下 项目目标 本项目旨在通过 Python 编程语言,结合气象数据处理库(如 xarray、metpy...)和可视化工具(如 matplotlib、cartopy),实现以下目标: 计算整层水汽通量散度:基于气象数据(如 ERA5 再分析数据),计算从地表到特定高度范围内的水汽通量散度。...嵌入小地图:在剖面图中嵌入小地图,显示剖面路径和地理信息,增强图的实用性。..., 经度) end_point = (20, 130) # (纬度, 经度) div_q = xr.open_dataset(nc_path) div_q = div_q.metpy.parse_cf...剖面图的绘制:使用 metpy 和 matplotlib 绘制水汽通量散度剖面图,并嵌入小地图显示剖面路径。 如果想计算其他气象变量的剖面,先计算后将其存为有经纬度的nc文件再使用metpy函数即可
安装 windspharm库是在pyspharm库基础上写出来的,windspharm库中的大部分计算依赖pyspharm库,所以要使用windspharm库就也要安装pyspharm库。...• 如关闭,则重复上述指令,Anaconda Prompt会提示你Anaconda的根目录所在位置,将whl文件放进上述文件夹,重复pip install即可 注意:同时该库对numpy库的版本有要求,...这里提供使用范例: step1:将我们的u,v调整至适合的输入形式 我们前面提到经纬度的维度需要放在数据前两个维度,windspharm提供了改变数组形状以及恢复形状的函数prep_data以及recover_data...,其中维度为 (时间t,高度层z,纬度y,经度x),字符“x”和“y”分别表示经度和纬度,这两个维度和字符串务必保持对齐!!!...['mathtext.default'] = 'regular' # Read zonal and meridional wind components from file using the xarray
在Java中,交换数组中的两个元素是基本的数组操作。下面我们将详细介绍如何实现这一操作,以及在实际应用中这种技术的重要性。一、使用场景在编程中,我们经常需要交换数组中的两个元素。...例如,当我们需要对数组进行排序或者在某种算法中需要交换元素的位置。这种操作在数据结构、算法、机器学习等领域都有广泛的应用。...// 类名:ArrayFunction// 函数名:swap(T[] array, int index1, int index2)// 函数功能:交换数组中两个元素的位置 public class ArrayFunction...{ /** * 交换数组中两个元素的位置 * @param array 待交换元素的数组 * @param index1 第一个元素的下标 * @param index2...健壮度:在函数中,对输入的参数做了两次检查(null和长度),确保了在函数体中操作的数组是有效的,增强了健壮度。综上,从封装性和可扩展性的角度考虑,FuncGPT(慧函数)更符合开发人员的需求。
前言 上次写的教程疏忽大意了,示例文件整成nc文件了 xarray 系列 | 怎么使用ERA5再分析数据绘制气象要素廓线 虽然上次的代码一样能读取,但是读取出来的·变量名还是有差异的, 为了不误导读者,...,可以看到该行的最右角,会出现个三角形,点击查看即可 使用xarray直接读取GRIB文件 xarray允许您指定不同的引擎来处理不同格式的数据。...engine = 'pynio' dataset = xr.open_dataset(file_path, engine=engine) dataset Out[1]: 变量名相信大家能认出来,还有就是高度经度纬度的差别..._ISBL'][0] u500=u_wind.sel(lv_ISBL1=500) v500=v_wind.sel(lv_ISBL1=500) u500 定位指定经纬度站点 确定您感兴趣的经纬度坐标(例如...使用xarray的sel方法找到最接近该点的格点数据 In [9]: target_lat, target_lon = 40, 120 nearest_point = dataset.sel(g0_lon
气象雷达是气象观测的重要设备,特别是在突发性、灾害性的监测、预报和警报中具有极为重要的作用,是用于小尺度天气系统(如台风和暴雨云系)的主要探测工具之一。...雷达数据在日常业务科研中的应用非常多,比如雷达数据可以用于数值模式同化中,为数值模式提供一个更加准确的初始场;基于雷达反射率数据的雷达短临预报系统可以预报未来2小时内,雷达探测范围内的强对流天气。...在这里,PyCinrad库同时计算出了圆锥面上每个点的具体经纬度值和高度值,有了这些值,可以帮助我们更方便的在二维和三维的笛卡尔坐标下进行可视化。...plt.figure() ax = Axes3D(fig) #创建三维绘图空间 X = r.longitude.values.flatten() #读取ppi中经度纬度高度和反射率数值,并转化成一维...plotly三维动态可视化 需要在jupyter中才可以进行交互 #取出经度、纬度、高度、反射率 X = r.longitude.values Y = r.latitude.values Z = r.height.values
,会出现个三角形,点击查看即可 前言 嗨大家好,这次带来的是上期的续集:关于整层的水汽通量散度的计算 在气象学中,整层水汽通量散度(Vertically Integrated Moisture Flux...通过这篇文章的学习,您不仅能理解整层水汽通量散度的物理意义,还将掌握如何使用Python及其生态中的工具来处理和分析气象数据。...[最小经度, 最大经度, 最小纬度, 最大纬度] extent = [90, 140, 15, 55] # 例如:东亚地区 # 调用绘图函数,并传入extent参数 plot_integrated_moisture_flux_divergence...[最小经度, 最大经度, 最小纬度, 最大纬度] extent = [90, 140, 15, 55] # 调用绘图函数,并传入extent参数 plot_integrated_moisture_flux_divergence...对各个计算步骤进行了详细的单位分析,确保了物理意义的准确性和计算结果的有效性。 利用matplotlib和cartopy库将整层水汽通量散度的结果进行了可视化,帮助更好地理解大气中水分输送的模式。
与水平分量有关的物理量如下表所示 符号 意义 单位 φ 纬度(弧度制) 1 λ 经度(弧度制) 1 a 地球半径 m p 气压与1000hPa之比 1 U 气候场基本流场U分量 m/s V 气候场基本流场...位势与位势高度 位势高度的单位是gpm位势米或者m米,gpm在metpy的单位系统中与m是等价的。 位势的单位是m²/s²,数值上约是位势高度的9.8倍。 其实就是位势高度乘以重力加速度等于位势。...千万要注意你使用的数据是位势还是位势高度! 用位势高度求位势可以用metpy中的height_to_geopotential函数来实现。...把对弧度制经纬度的偏导转换为对水平距离的偏导,所以要用xarray或numpy这种相对来说比较“手动”的方案。...numpy的gradient函数和xarray的differentiate方法本质上是一样的,从文档上来看,differentiate应该是底层调用了gradient。
对于xarray之前已经介绍过两期了,分别是数据结构及数据读取和数据索引。 这一期要介绍的功能是插值与掩膜。 这两个方法在数据处理中会经常用到,实用等级☆☆☆☆☆。...插值 xarray中对scipy的插值函数进行了进一步的封装,可以让我们方便的调用。 只需要对DataArray,DataSet使用interp()函数就可以实现插值了,就像索引一样简单。...linewidth=1.2, color='k', alpha=0.5, linestyle='--') gl.xlabels_top = False # 关闭顶端的经纬度标签 gl.ylabels_right...= False # 关闭右侧的经纬度标签 gl.xformatter = LONGITUDE_FORMATTER # x轴设为经度的格式 gl.yformatter = LATITUDE_FORMATTER...# y轴设为纬度的格式 return fig, ax def mask(ds, label='land'): landsea = xr.open_dataset('landsea.nc
上一期,对Python绘制气象实用地图做了比较详细的介绍,尽管已经能够满足部分需求了,但是,在实际的应用需求中,可能还是别的需求,那么,今天就手把手教大家如何绘制几个省份的白化等值线contour地图。...目标:绘制西部的几个省份,并且mask掉其它区域,地图上支持中文,绘制经纬度网格线,附带经纬度信息。...再选定坐标系方案,最好和原来的shp文件一致。我在文末会提供相应的地图文件!...2.直接在终端使用python xxx.py运行; 需要注意的地方:很多人发现输出的图片是没有经纬度的坐标信息附加在网格线两端的,怎么调都还是出不来。...你会发现看图置顶的问题解决了,而且网格线两端也会正常出现经纬度信息。
领取专属 10元无门槛券
手把手带您无忧上云