利用Python进行WRF模式后处理的应该都知道,wrf-python用来处理WRF模式结果比较方便,但又太笨重了,经常需要编写很多代码。xarray是目前地球科学领域使用非常多的库,集成度非常高,使用非常方便。
我们经常需要对大量的模型输出数据进行处理和分析。在气象学中,WRF(Weather Research and Forecasting Model)是一个常用的数值天气预报模型,它可以提供丰富的气象变量数据来帮助我们理解和预测天气现象。 为了更好地处理WRF模型输出数据(当然因为wrfout文件太大了!),我们经常需要批量提取其中的变量,并将提取的数据保存为NetCDF格式(.nc文件),这样可以方便我们后续的分析和可视化操作。
今天只是分享一些python库,涉及到地理数据分析,数据可视化和数据处理三个方面。
xarray 中的DataArray 和 Dataset 对象除了上节介绍过的直接手动创建之外,更多的情况下却是通过其他数据储存结构转换和存储在硬盘中的数据存储文件读取而来。
Python作为最流行的编程语言之一,持续引领技术产业的发展,孕育了不断扩大的强大包生态系统。2023年,Python包在多样化的领域中展现出了引人注目的增长,反映了技术行业中不断变化的需求和创新。本文探讨了今年增长最快的Python包——它们不仅经历了飞速的增长,也显著推动了各个领域的进步。
今天直接给大家介绍一下我最近常用的空间绘图神器-Xarray,之所以给大家推荐这个工具包,是因为我最近在空间可视化课程中免费新增的部分内容,其就是使用Xarray工具绘制的。先给大家看一下新增的可视化预览图:
xarray 支持多种文件格式(从 pickle文件到 netCDF格式文件)的序列化和输入输出。
首先我们先导入所需的数据,本次使用的是经扩展重构的海表面温度 v5 数据集(Extended Reconstructed Sea Surface Temperature, abbr. ERSST)。这个数据集可追溯到 1854 年的海表面温度,并被广泛使用。
By: Ali Ahmadalipour (LinkedIn, Twitter)
在气象学的世界里,数据不仅仅是冰冷的数字,它们是自然界中风、云、雨、雪的直观反映。随着技术的发展,我们不仅能够收集到更加详尽的气象数据,而且还能以更加直观的方式分享这些信息。对于气象爱好者和博主来说,能够将复杂的气象模式转换成易于理解且吸引人的视觉内容,是一种既有趣又具挑战性的技能。
想如今气象数据netCDF(.nc)为盛,用者甚多,初学者见之仰天长啸,倘若再由Python经手,netCDF4-python,Iris,xarray,UV-CDAT选择众多,劳心伤神事小,逼出选择困难症事大。多番比对,选用xarray,解查安抚,化繁为简,最为称心。
在本文中,我们将对比两种Python雷达库,分别是pycwr和pycinrad,它们用于计算HCL(Hydrometeor Classification)产品的方法。通过对它们的功能、性能、易用性等方面进行比较,我们可以更好地了解它们各自的优势和特点。
距离上次xarray的更新已经过去两个多星期了...,关于xarray插值方法的介绍官方文档已经给的比较详细了,也有公众号推送过相关文章 xarray指南:插值 基于xarray的气象场站点和格点插值,所以xarray的插值部分就不单独说了。
“ 大家好哇!继上次我们说完怎么安装python之后,这一次给大家分享一下怎么根据自己的需求来部署所需要的库,如numpy库等。”
Unidata在其GitHub站点发起了一个地球科学相关的Python在线培训课程,主要包括大量的绘图示例以及很多气象常用库的入门教程。
xgrads的主要功能是解析Grads文件为xarray对象,可以更好的利用xarray的高维数据分析和可视化功能,加速气象相关的数据处理、分析和可视化。以下是对此库的具体介绍。
近几年,python在气象领域的发展也越来越快,同时出现了很多用于处理气象数据的python包。比如和NCL中的 WRF_ARWUser库类似的 wrf-python模块。
首先,要快速熟悉一个陌生的nc格式数据,你可以使用Python中的xarray库。xarray是一个用于处理多维数组的强大工具,特别适用于处理带有标签的多维数据。它提供了一种直观的方式来组织、分析和可视化数据,尤其适用于气候科学和地球科学领域的数据处理。
xarray (之前的 xray) 是一个开源的python库。通过提供 pandas 的核心数据结构N维变形功能,从而将 pandas 的标签数据功能应用到物理科学领域。主要是想提供一个类似pandas并且能与pandas兼容的工具包来进行多维数组(而不是pandas 所擅长的表格数据)分析。采用的是地球科学领域广泛使用的自描述数据通用数据模型实现上述功能。
封图:Photo by Eiliv-Sonas Aceron on Unsplash
以下全文代码和数据均已发布至和鲸社区,复制下面链接或者阅读原文前往,可一键fork跑通:
PyAOS(Python for Atmosphere and Ocean Science)是面向大气和海洋科学的Python社区,由Damien Irving博士创建维护,旨在为大气和海洋科学领域的科研人员提供相关的Python资源。
当前众多学科的科学研究都依赖于计算机,比如气候、天气、大气化学、空间天气等的模拟都需要超算。模拟和观测都会产生的大量数据,分析这些数据同样需要强大算力的支持。科学家不仅需要相应的科学知识,还需要过硬的技术来处理、分析大量数据。
cfgrib 是 ECMWF 开发的 GRIB Python 接口,支持 Unidata’s Common Data Model v4,符合 CF Conventions。高层 API 接口为 xarray 提供 GRIB 解码引擎。底层访问和解码由 ECMWF 的 ecCodes 库实现。
无论安装以下哪种库,强烈建议在新环境下安装,之前在base环境下安装各种报错!!!如何在新环境下安装可参见我之前的总结或网上其他文章。
学习气象少不了与等值线 (contour line; isoline) 打交道。proplot 以 matplotlib、cartopy 包作为基础,可使用 matplotlib 中的方法来绘制等值线图。下面介绍一个简单的绘制气温的例子:
导入模块 from pyEOF import * import xarray as xr import numpy as np import pandas as pd import matplotlib.pyplot as plt Warning: ecCodes 2.22.0 or higher is recommended. You are running version 2.21.0 定义绘图函数 # create a function for visualization convenience
前段时间有读者来信问再分析数据的气象要素廓线怎么绘制,近期小编可以腾出手做个简单示例
在sql中如何计算基尼系数,可以查看我的另一篇文章。两篇文章取数相同,可以结合去看。
gma库是洛大神写的一个地理库, 其中有许多可以使用的函数, 今天简单介绍一下它克里金插值的使用,并与meteva进行对比
本篇文章将从数据下载、处理、神经网络训练、画图四个大步骤叙说笔者在复现 Deep learning for multi-year ENSO forecasts这篇文章的工作。所涉及Python库有 wget , matplotlib , numpy ,xarray , pytorch 等一系列在深度学习以及气象数据处理中经常使用的函数库,希望这篇文章能够对大家有所帮助。笔者也只是大学二年级的本科生,做这些东西也只是凭借个人兴趣,水平低下、错误频出也是常有的事情,请大家见谅。
在东经126,北纬9的附近的小黑点就是最大值所在,格点数据放大看确实有点奇形怪状 还有对应的argmin,用法差不多就不多介绍了
项目地址:https://pycwr.readthedocs.io/en/latest/draw.html
XGCM 是一个python包,用于处理由数值大气环流模型(GCMs)和类似网格数据集产生的数据集,这些数据集可以进行有限体积分析。在这些数据集中,不同的变量位于不同的位置,相对于一个体积或面元素(如单元中心,单元面等) XGCM 解决了如何插值和差异这些变量从一个位置到另一个问题。
此项目的动机是为地球科学领域提供插值工具。当然也有其它库可应用于地球科学的数据插值,但是这些库基本完全是用Python编写,其性能无法满足需求。
这部分包含的时 wrf-python 模块中的API,如果wrf-python提供的函数不能满足你的需求,你也可以根据已有的API重新编写一个处理函数或是其它的诊断函数。当然,大多数时候我们仅需要wrf-python已经提供的诊断函数和其它可调用函数,可能都不会使用到这些API。
“ Hello!大家好哇!咱们在上一篇文章中说了为什么选择学习Python这门语言,那么接下来呢,会和大家分享一下学习Python的一些建议。”
很多时候我们需要拿模拟数据和站点图作对比,那就需要把模拟数据插值到站点 今天来尝试两种WRF数据插值到站点的方法并使用meteva进行简单绘图 方法一:xesmf库重插值后使用meteva进行双线性插值到站点 方法二:proj+scipy重插值后使用meteva进行最临近插值到站点
好久没用NCL了,今天上去官网看了一下,发现他们在去年11月份又update了一封给用户的信,愉快地宣布PyNIO和PyNGL统统烂尾啦~~
气象领域的数据存储格式大多都是netCDF、HDF、Grib格式,这些文件格式已经发展的比较成熟了,大家也都已经习惯了处理这些格式的文件。但随着数据量的增加以及云计算的发展,这些文件系统已经无法满足需求,针对云计算优化的文件系统应运而生。
最近在研究个人所得税的收入再分配效应,不是心甘情愿的,毕业论文需要 因为使用了CHIPS的数据库,微观住户调查数据是我见过最变态的数据源,没有之一~ 其中所使用到的理论模型中需要计算很多个人所得税、再分配效应和累进性指标,经过参考各方文献资料,依靠着自己对于R语言的一丁点儿基础,终于把所有的指标计算代码整理完了,因为代码太多,除了预处理和数据清洗的之外,这里分享一下我觉得可能会对学术研究人员有用的几段核心代码! 以下代码一共分为两类,一类是计算个人所得税的代码,一类是衡量收入分配不均等的测度指标。 个人所
xarray.Dataset 是和 DataFrame 相同的多维数组。这是一个维度对齐的标签数组(DataArray)的类字典容器。它用来展示NetCDF文件格式的数据。
最近,一些气象公众号讨论了气象领域的云计算和数据平台的问题,具体可以参考 美国气象行业如何应用云计算?气象业务该不该在线?
之前也推送过地球科学领域的Python工具合集 工具推荐|大气科学领域最常使用的工具集合,也单独推送过一些优秀的Python工具。今天在搜索资料的时候发现了这个涉及到空间分析和制图、水文、气象、气候和地震学方面的Python工具合集。
昨日有读者说想看看EOF和小波分析,近期也在搞xarray的推文,就拿xarray的数据直接做了。
领取专属 10元无门槛券
手把手带您无忧上云