空间绘图神器-Xarray 今天直接给大家介绍一下我最近常用的空间绘图神器-Xarray,之所以给大家推荐这个工具包,是因为我最近在空间可视化课程中免费新增的部分内容,其就是使用Xarray工具绘制的。...效率:Xarray通过对数据进行坐标对齐,能够高效地处理大型数据集,减少了内存使用和计算时间。...通过与Matplotlib和Cartopy等库的无缝集成,用户可以轻松地自定义绘图样式和布局。...可视化案例 从月平均值时间序列计算季节平均值 多子图绘制 多维度数据绘制 更多案例可参考:Xarray官网[1]。...PS:默认的Xarray绘制的图形结果,显然离论文发表需求还有一定的距离,那么如何绘制一幅符合论文出版需求的图表呢? 如何快速学习科研绘图技巧? 如何快速的学习科研论文绘图技巧?
*注:封面图片均为ai生成 前言 需求:大家看到诸多文献使用卫星云图作为天气形势系统介绍时想必也想自己也为文章中加一张,那么卫星云图如何叠加降水图呢 面向群体:需要使用卫星云图进行天气学分析或天气系统阐释的小伙伴...直接使用会使图像对比度不高,颜色看起来比较浅淡。通过gamma校正等方法将这种线性关系转换为非线性,使较暗的区域变亮,较亮的区域保持不变。...这样可以增加整个图像的对比度,使颜色更加饱和丰富 为什么修改单位km为m 图投影坐标系一般使用的是米为单位。直接拿千米单位的影像坐标去绘制地图,会造成非常严重的坐标错位。...因此需要提前将影像的坐标单位换算为与地图投影匹配的米单位,然后再传入投影变换,进行坐标转换到地图上。...为什么使用pcolorfast 对于绘制地图影像,pcolorfast能够提供更快速和直接的解决方案。它适合直接可视化大规模的不规则网格数据,比如常见的卫星影像等。
“ Proplot是python画图时常用的库,今天就让我们先来一起认识下它吧!”...它的核心任务是为 Matplotlib的用户提供更流畅的绘图体验, 即“以更少的代码,得到更多的绘图”。...它对Basemap、cartopy、xarray、pandas等气象常用的绘图库进行导入和封装,使组图、子图的绘制变得简单,对于气象人来说十分便捷。...,大家可以与上面进行一个对比。...以下步骤虽然看着略微复杂,但是在实际画图中,如果要画整个地图,便可以直接复制下面的代码绘制底图,之后的图层可以慢慢叠加。
https://www.showdoc.com.cn/meteva/ 面向群体:拿着micaps数据却不知如何读取与绘图的小白...相信我,选择meteva库绝对能让你在气象数据处理的世界里燃起激情的火焰!Let's go,一起点燃数据的热情吧! 当新手开始使用meteva库时,可能会遇到一些常见的问题。...案例:1.5 地图白化 多图层的气象要素要怎么实现?案例:1.6 多图层绘制:使用micaps3类与micaps4类数据为例 这些问题是新手在使用meteva库时可能遇到的一些疑惑。...可以干什么 博主主要用于读取micaps数据与绘图 ,就业之后可用于业务评分。...micaps3类与micaps4类数据为例可视化相对湿度、海平面气压等值线、24小时降水站点分布 1.6.1 底图绘制 creat_axs nplot: 子图的数量。
一、地形剖面图 绘制地形剖面图之前,需要了解自己使用的地形文件的格式与属性。我使用的是从气象家园巨佬Masterpiece处白嫖来的地形文件。...文件为.nc格式,需要使用Python中的netCDF4或者xarray库包来读取。...可以看出,z仅仅与y,x有关,且第一相关量为y而不是x,这与我们习惯不同,在取值时需注意。 因为是二维的数据,那么按照绘制平面填色图的ax.contourf命令是可以直接读取数据绘图的。...在绘制地形填色时,我们使用的是ax.contourf命令,他要求输入横坐标,纵坐标,与横纵坐标有关系的z值。...这样z就必须是二维的,以与横纵坐标相关,所以切片时,我们必须使z切取范围与x,y完全一致,否则报错。 但是绘制剖面图,我们还需不需要contourf命令呢?
这里也可以使用 xarray 自带的插值方法进行插值,或者使用 salem 提供的函数进行插值,比如 .wrf_zlevel 进行垂直插值: ds.isel(time=1).salem.wrf_zlevel...() 可视化 可视化的部分其实之前就提到过了,xarray 的 Dataset 和 DataArray 都有 plot 方法可以进行快速绘图,也可以非常方便的绘制多幅子图。...温度分布图(点击看大图) 除了这种一键可视化之外,也可以进行单个时刻的绘图,或者提取某一个站点的数据绘制时间序列图: ds['T2'].isel(south_north=120, west_east=50...这次就说这些,salem 的后处理功能没有 wrf-python丰富,尤其是一些诊断变量和绘图的功能,但是目前wrf-python还没有提供 xarray 的兼容接口,很难利用其 xarray 很多便利的函数...后续添加完成后会开源,不知道大家平时都有哪些处理操作是经常需要用到的,可以考虑一起加进去,欢迎留言提出 —END—
这里也可以使用 xarray 自带的插值方法进行插值,或者使用 salem 提供的函数进行插值,比如 .wrf_zlevel 进行垂直插值: ds.isel(time=1).salem.wrf_zlevel...() 可视化 可视化的部分其实之前就提到过了,xarray 的 Dataset 和 DataArray 都有 plot 方法可以进行快速绘图,也可以非常方便的绘制多幅子图。...温度分布图(点击看大图) 除了这种一键可视化之外,也可以进行单个时刻的绘图,或者提取某一个站点的数据绘制时间序列图: ds['T2'].isel(south_north=120, west_east=50...这次就说这些,salem 的后处理功能没有 wrf-python丰富,尤其是一些诊断变量和绘图的功能,但是目前wrf-python还没有提供 xarray 的兼容接口,很难利用其 xarray 很多便利的函数...后续添加完成后会开源,不知道大家平时都有哪些处理操作是经常需要用到的,可以考虑一起加进去,欢迎留言提出,也可以点赞、在看给个鼓励快速开源,也可以赞赏加个鸡腿给更新加个速~ —END—
用Python绘制《天气学原理和方法》插图 作者:Vector 最近天气学原理需要绘制课本插图来做 翻转课堂,因此整理了课本第四章几个典型图片的画法和代码,共需要的人使用。...难点:各种库的下载与安装,主要难点在xarray上。...vwnd.mon.mean.nc" def DrawVWind(): # 读取数据 vwind = xr.open_dataset(dir_loc)["vwnd"] # 选择使用的年份...NorthPolarStereo 最后的结果为 完整代码: import xarray as xr import matplotlib.pyplot as plt import cartopy.crs...简单应用参考:python电场线画法 - Vector的文章 - 知乎 https://zhuanlan.zhihu.com/p/222450226 因为使用streamplot的时候会用到scipy进行插值
as np import xarray as xr from matplotlib import pyplot as plt 示例数据 首先我们先导入所需的数据,本次使用的是经扩展重构的海表面温度...ds.sst.isel(time=0).plot(vmin=-2, vmax=30) 上述代码选取了时间维度第一个的变量 sst,同时通过vmin和vmax定义色标的绘制变量数值范围为-2 至 30....需注意的是,许多导入的 xarray 数据集存在单位(units)属性,这些属性可用于绘图,目前独立于 xarray 项目进行开发的包pint[1]可以实现对单位的完全感知并进行转换。...apply_ufunc 函数的使用 上面可以调用np.log(ds)并使其在 xarray 中“正常工作”是非常幸运的,因为并非所有的库都能直接在 xarray 中正常工作。..., 使温度标准更准确地反映热力学温度, 提高温度标准的复现性。
前言 首先,要快速熟悉一个陌生的nc格式数据,你可以使用Python中的xarray库。xarray是一个用于处理多维数组的强大工具,特别适用于处理带有标签的多维数据。...它提供了一种直观的方式来组织、分析和可视化数据,尤其适用于气候科学和地球科学领域的数据处理。 xarray库的核心数据结构是DataArray和Dataset。...通过使用xarray库,你可以快速加载、检查和分析nc格式的数据,以便更好地理解和利用这些数据。...接下来,我将为你提供一个简单的xarray库介绍,以帮助你更好地理解如何使用它来处理陌生的nc格式数据。...() cropped_ds.plot() 完整文件与代码在此
之前转载了一篇使用Python制作时间演化图的推文,后台留言说想要代码,但是我也没有那篇推文的代码。这次就把我平时用到的绘制时间动态变化图的工具介绍一下,同时附上代码。...imageio 这个工具使用方便,可以和图形压缩工具一起使用,降低图片的大小。...xmovie xmovie属于更高级一些的工具,可直接兼容xarray对象,提供了非常方便的可视化方法,比如一行代码动态可视化、自定义绘图函数、并行绘图等。...以下以官方提供的示例说一下使用方式: import xarray as xr from xmovie import Movie ds = xr.tutorial.open_dataset('air_temperature...除了这两个库之外,还有一个命令是我经常使用的,也非常方便。
(Ⅰ) 基础线图绘制 xarray 通过对plt.plot()的包装实现对线图的绘制。...data1d 尝试直接使用.plot()方法绘图 data1d.plot() ? data1d.plot() 似乎图在水平方向上稍显拥挤,有办法使得画板水平方向更加宽松吗?当然有。...若未全指定上述所有属性,则采用相应属性的默认值。 当然也可使用 python 参数marker, linestyle 或ls, color 或c分别指定上述属性。...plt.tight_layout()[5]:自动调整子图参数,使之填充整个图像区域。...控制各个子图的绘图属性。
(Ⅰ) 基础线图绘制 xarray 通过对plt.plot()的包装实现对线图的绘制。...首先提取北纬 60°,西经 110° 处时间变化数据 data1d = ds.Tair.sel(lat=60, lon=250) data1d data1d 尝试直接使用.plot()方法绘图 data1d.plot...xarray 数据的属性可用.attrs方法获取。 data1d.attrs data1d.attrs 类似于MATLAB 线图绘制[2],可用类似的参数指定绘制线型、标记和颜色。...plt.tight_layout()[5]:自动调整子图参数,使之填充整个图像区域。...信息,在每一个循环过程中将各个Axes的地址赋值给axi(按址赋值),然后通过变量axi控制各个子图的绘图属性。
由于模式数据非常巨大,一般pc的内存不够大,无法一次性处理如此大的文件,因此这里不再使用xarray库直接读取数据,而是先用glob库,通过glob库提供的方法将上述7个文件导入系统,但这个时候数据还未读取到系统内存...读取数据,但是这里读取数据的方法,与前面的课程有非常明显的不同(前面用的是xarray.open_dataset来一次性读取nc文件到内存中),这里用到的是xarray.open_mfdataset函数分批读取数据...,我们具体来看看它是如何读取数据的。...懒人模式的一种,一般来说,xarray非必要的情况下不会计算,但是绘图或者写入netCDF文件则会发生计算操作。...说明在多核cpu之间进行系统调度也是耗费时间的,因此,多核cpu并行处理化场景可能不是最优解决方案,需要根据实际情况选择方案。 4、绘图 在完成了日最大降雨量的数据计算后,即可以完成画图工作。
我特别喜欢城市周围的线条,它们交织在一起,呈现出一幅非常精确的城市地图的实际面貌。这个可视化地理空间数据是我最喜欢的项目之一。...使用地理空间数据有很多应用程序——位置跟踪、基于位置的营销和广告,将你与最近的骑手或送货员联系起来,以及其他用例。事实上,这一领域已经开始在业界崭露头角,所以现在是了解这一领域的最佳时机。...底图在表示信息时非常有用,可以提供美观的效果: 视频:https://youtu.be/Md3WkrDJc1Q 你可以在上面看到底图的颜色是如何使我们的视觉效果与众不同的。...在这里,我使用过滤器并选择了包含用于筛选数据集的取货时间的列。现在,我们可以查看当天不同情况下的取货地点热图。这幅图像为我们提供了一天中不同时间纽约市最繁忙地区的信息。...因为这次我们的数据集的格式不同,所以我们将使用不同的库来处理这个数据集。我们会用geopandas做这个。 Geopandas是一个Python库,它使使用Python处理地理空间数据更加容易。
使用 Meteva 内置的绘图函数 meb.tool.plot_tools.contourf_2d_grid() 绘制等值线图 meb.tool.plot_tools.contourf_2d_grid(...使用 meb.xarray_to_griddata() 函数将要素场对象转为 meb.grid_data() 函数生成的 xr.DataArray 对象 可以看到,对于单个要素场,该函数自动生成了 memeber...验证 对比本地提取的要素场和从 GDS 中获取的要素场是否相同。 从下图中可以看到,member 的名称不同,同时 time 也不同。GDS 使用的是北京时间,而本地文件使用世界时。 ?...修改坐标值,与 t850_grid 保持一致: 添加 member 名称 将时间从世界时改为北京时 meb.set_griddata_coords( cropped_grid_data,...计算 计算 024 时效与该时刻分析场的均方根误差 载入数据 整合函数,实现如下功能: 使用 nwpc-data 从 GRIB 2 文件中加载要素场 将返回的要素场转换为 xr.DataArray 对象
经纬度数据(类似散点图中的 X 轴与 Y 轴);2. 地图数据(类似散点图的背景图片) 下面我会一一讲解如何获取这两类数据。 得到数据之后,我们还需要相应软件来实现地图的可视化。...而 R 是开源软件,绘图也是它的强项,所以此教程我们将采用 R 语言的 leaflet[1] 包进行地图的可视化。 2....-09 坐标系(再次加密的火星坐标系):国内的百度地图使用; 因为本教程为了适用性使用的是高德的底图(GCJ02坐标系),如果您是WGS84坐标系在后续代码中删除高德的底图就好(一定会面临主权问题);如果您是...为了方便起见,本教程直接使用高德地图提供的底图。 3. 绘制地图 由于本文内容较多,我们将在下一期分享下面三个图的绘制教程,先看下结果。...本教程使用的是高德的底图,所以可以直接使用高德提供的审图号。如果是来历不明的地图数据,无法提供审图号可能会引来一些不必要的麻烦。
xarray是目前地球科学领域使用非常多的库,集成度非常高,使用非常方便。...由于一些原因,xarray直接处理WRF模式结果一直是痛点: WRF输出的nc格式文件不是CF兼容的 wrf-python 需要和 netCDF4-python 和 xarray 接口交互 wrf-python...为了充分利用 xarray 的强大功能,NCAR近期发起了名为 xwrf 的小项目。...concat_dim="Time", combine="nested", preprocess=preprocess, chunks={'Time': 1}, ) 读取好数据之后,剩下的数据处理和可视化操作与常规使用...但是很多诊断变量可能无法直接处理,这也是目前的问题。如果能够集合 wrf-python 的诊断量计算,以及各种剖面绘图功能,就完美了。 就介绍到这,感兴趣的可以安装测试一下。
这是第二次参加上海气象学会主办的比赛,第一届的短临预报比赛和小伙伴一起最后获得了二等奖。这一次只有我一个人,最后因为各种原因只参加了前半程,提交了大概3次结果,从最初的双赛道第一最后定格到第四。...这几年国内外和气象相关的AI大赛比较多,改天再细聊一下AI+气象大赛。 刚好近两天ECMWF开放了预报数据,那就来看一下如何获取到全球各大气象机构发布的数值预报产品吧。...文件 从GRIB2文件中提取子集并下载 使用 xarray 读取数据 使用 Cartopy 绘图 总的来说,Herbie 使用方便,而且兼容目前常用的工具。...H.xarray("TMP:2 m") 有时可能需要下载大量的数据, Herbie 也提供了非常方便的工具函数: from herbie.tools import bulk_download import...目前主要是获取数值预报产品,数据处理和绘图部分正处于开发中,如果有什么问题也可以去反馈。
有关演示如何使用Python中的底图来生成有效的地图可视化的更多示例,请查看以下这些用户内核: 美国宽带手机接入的地图可视化(Jesse Lieman-Sifry制作)。...在另一个Ewen Henderson的内核中,他分析了由FiveThirtyEight作为Kaggle数据集发布的2016年调查数据,使高速成像看起来超级容易使用。...注意他使用恰当的Highcharter主题是FiveThirtyEight。 在2016年总统选举投票数据中,共和党与民主党的(平均)偏好。...这使得pavelevap的可视化和底图的使用相当有效。 1950年至2013年500个随机城市的年平均温度的可视化。...利用DBenn绘制外太阳行星的3D空间位置的地图(R)。这个内核展示了Plotly中酷炫的3D绘图功能,将太阳系行星的位置可视化了。 使用Plotly在3D空间中绘制外行星。
领取专属 10元无门槛券
手把手带您无忧上云