晴天一声雷,NCL官网发布重要通告,他们决定不再更新NCL转而向Python发展。WHAT???我刚把NCL用熟了你就跟我说这个。...得益于这些优秀的库,近些年python在地球科学领域快速发展,并逐渐成为未来的趋势。现在python不但可以替代NCL而且还能提供很多NCL不具备的功能。...NCL to Python NCL的功能在python中转为了PyNIO和PyNGL这两个库: 1.PyNIO使用了NetCDF的接口用来读写各种类型的数据,包括NetCDF、GRIB、HDF等。...不过幸运的是NCL团队很贴心的给出了NCL向Python过渡的指导手册(NCL-to-Python Transition Guide),链接在文末。...熟悉NCL的小伙伴借助官方的文档一定能很快的完成向python的过渡。 Linux配置环境 之前的文章里有详细介绍过如何安装conda,想看详情的请见:一文教你解决Python所有安装配置。
为了帮助大家从NCL迁移到Python,开发者也是想尽了办法啊,最近有发起了新的项目-GeoCAT Examples[1],提供了很多的与NCL网站示例脚本对应的Python脚本,旨在帮助大家从NCL逐步迁移到...在提供了的很多Python绘图示例脚本中,目前尚存在不足的是NCL中curly vector图的绘制。如下图所示: ? 左为Python绘制,右为NCL绘制. 左图为截图....可见,matplotlib所绘制的quiver图,矢量箭头没有NCL的流线型,但这个问题后面可能会通过matplotlib上游贡献解决。 其余的图python基本都能够很容易的实现。...左为Python,右为NCL绘制 附: 官方提供的图片大小不一致,为了将Python和NCL的图片进行拼接,本文处理图片用到了ImageMagic的两个命令: •identify:获取图片的尺寸信息•convert...:改变图片尺寸,并进行图片拼接 使用如下命令分别获取Python和NCL绘制的图的图片尺寸 identify xy_18_lg.png xy_18_lg.png PNG 700x472 826x827+
首先这不是一篇告诉你如何抛弃NCL的推送,而是告诉你如何更好的使用Python! 作为曾经地球科学领域最炙手可热脚本语言之一的NCL已经进入维护模式,不再更新。...NCAR将使用Python作为地球科学领域的主要数据处理和可视化工具。 NCAR对NCL进行了“封装”,构成了PyNGL和PyNIO,随后可能还会开发一款工具,囊括NCL中大多数函数。...PyNGL和PyNIO中的函数和绘图方式与NCL是非常类似的,可以非常顺畅的从NCL转到Python。...既然已经从NCL转到Python了,那么为什么一定要执着于PyNGL和PyNIO呢,今天就抛开PyNGL和PyNIO,介绍Python中其他常用库,实现真正的跨平台切换。...colorcet,palettable,colour:提供了很多可选的colormap•colormap:提供了一些颜色转换基础操作和创建colormap的函数•cmaps:提供了NCL中所有的colormap
NCL作为一门高级编程语言,包含了大量函数库,使得编程语法较为简洁方便,这也导致了在处理较大数据时运行速度的下降(Matlab、Python等也有同样的问题)。...1、尽量少用循环 NCL在做循环时特别费时间,这就需要我们在设计代码逻辑时尽量减少循环,对于循环,能合并的就合并,还有可以多用一些NCL的隐藏技能。...尤其是需要循环读取多个很大的文件时,即使在NCL脚本中删除了这些文件的变量名,但是NCL并不会释放这些文件,它们还会占用大量的内存,造成运算效率低下。...中的getenv函数读取 ncl test.ncl done 假设这里是要对每个文件中的变量var算平均值,那么test.ncl脚本如下: begin filedirectory = getenv...7、用NCL调用Fortran程序 用NCL调用Fortran程序,需要使用wrapi脚本来将Fortran程序编译成共享对象,从而使NCL可以用external来调用该共享对象。
有任何问题都欢迎交流探讨,共同学习进步!
同时,随着NCL多个版本的优化,NCL提供了大量优秀的函数,来帮助使用者快速熟悉并使用气象和海洋中常用的统计方法。虽然现在NCL在向python转移,但是短时间内NCL依旧不会过时。...NCL主要是在Linux系统下运行。...NCL版本较为落后,目前版本可能为6.4.0(最新版本为6.6.2) sudo apt install ncl-ncarg 方法二 下载NCL6.6.0的安装包后直接解压缩。...在Windows下运行的NCL你可以随时找到他的目录,如果一个版本在绘图或者计算的时候存在bug,你可以直接对NCL的文件进行替换,方便快捷。...---- 编后语:关于WSL有很多值得开发的用法,比如python的使用,wrf的使用,大家可以自己去开发 ---- 参考内容: https://blog.csdn.net/ibless/article
NCL官网真是不写信则已,一写就是分手信啊。。 NCAR宣布已有的NCL、PyNIO和PyNGL都进入维护模式。...WRF-Python: GeoCAT团队将继续积极开发和支持 WRF-Python,并计划加强其与Xarray的兼容性。 NCL: NCL处于维护模式。...GeoCAT 团队正在积极实现将 NCL 功能迁移到Python,同时开发了GeoCAT工具包(例如GeoCAT-comp和 GeoCAT示例,用于计算和绘图功能) ,以及其他常用Python包的帮助。...具体可以见我以下两篇旧文: 如何优雅地告别NCL NCL投入Python怀抱的路线图与时间表 谁能想到,这才短短一年多的时间,这两个气象界万众瞩目的包,就烂尾了 ?...放弃了独立性的NCL,在Python的框架下能走多远?
NCL作为一门气象专业语言,自带了很多气象届常用的算法和命令,比如各种强大的插值函数。...平时,我们不管做科研也好,还是做业务也好,都逃不了各种各样的插值:站点插到格点上,格点插到站点上,高分辨率插值到低分辨率格点,低分辨率插值到高分辨率,还有各种模式输出产品往站点、格点上插……NCL没出来之前...后来有了NCL,导师再也不怕你因为插值而卡在那里一个月没有任何进展啦!(然而NCL停更了耶。。) 好啦,现在让我们一起快乐地插值吧! ?...NCL的插值函数都在ngmath库(该库是Fortran、C语言、NCL可直接调用的数学命令的集合)中。...根据插值方法的不同,NCL的插值函数主要可以分为以下几类: csagrid系列:该系列函数利用一个三次样条近似演算法来拟合输入数据的函数。
两图中红色均表示rectilinear网格,左图黑色四边形表示curvilinear网格,右图黑色多边形表示unstructured网格 Regridding步骤 在NCL中实现上述网格映射主要采用的是...0 = "y" ;-- name dimension 0 (default: ncl0) var_regrid!...NCL_Advanced_regrid_rectilin_to_curvilin_bilin_wgts_ESMF.ncl" fileattdef(fout,fAtt) ;-- copy file attributes...NCL_Advanced_regrid_curvilin_to_rectilin_bilin_weights_ESMF.ncl" fileattdef(fout,fAtt) ;-- copy file...NCL_Advanced_regrid_unstruct_to_rectilin_bilinear_wgts_ESMF.ncl" fileattdef(fout,fAtt) ;-- copy file
脚本主要内容: NetCDF数据读取 计算和存储 等值线、矢量箭头、图层叠加 脚本略有缺失,完整脚本请购买施宁教授出的《NCL数据处理与绘图实习手册》纸质书籍。版权归施宁教授所有。...代码: load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl" load "$NCARG_ROOT/lib/ncarg/nclscripts/csm.../gsn_csm.ncl" load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl" load "$NCARG_ROOT/lib/ncarg.../nclscripts/csm/shea_util.ncl" begin year=ispan(1979,2013,1) ; 79/80 - 13/14 it_s=197912 ;起始年月 it_e...plot-comp-enso") gsn_define_colormap(wks,"rainbow+gray") ; 调用rainbow+gray色板,,其它色板名称请查阅http://www.ncl.ucar.edu
Python在气象与海洋领域的应用愈发广泛,特别是其拥有众多的第三方库避免了重复造轮子,使得开发速度较快。...Anaconda 是一个用于科学计算的 Python 发行版,支持 Linux, Mac, Windows系统,包含了众多常用于科学计算、数据分析的 Python 包, 以及一个包管理器conda。...4 使用从conda搭建NCL环境 气象和海洋领域中,NCL也是较为常用的语言,其出图较为精美,且官网提供众多现成的脚本。...-n ncl_stable -c conda-forge ncl source activate ncl_stable conda update -n ncl_stable -c conda-forge...--all # 安装成功后使用 source activate ncl_stable ncl plot.ncl 参考: http://www.ncl.ucar.edu/Download/conda.shtml
在这个系列笔记正式开始前呢,我想和大家分享一下作为一个大气科学专业的学子,为什么会选择学习Python。” 01 — 首先,Python的应用范围可能会更广。...就在目前来看,python在机器学习领域、自动化办公、数据分析等多个领域均有涉及,而不像NCL等语言可能略显专业。...03 — 最后,Python目前虽然已经比较成熟了,但仍处在不断发展完善之中,而我们知道,NCL语言早在几年之前就已经停止更新了,也转向了发展Python。...还是拿NCL来举列子,NCL的功能在python中转为了PyNIO和PyNGL这两个库,其中PyNIO就使用了NetCDF的接口用来读写各种类型的数据,包括NetCDF、GRIB、HDF等,而PyNGL...是一个可视化的库,里面的参数设置和NCL中的很相似。
1.如何同时满足使用Python、NCL、MATLAB、GrADS、Fortran(也就是WSL怎么配置)?...那么有什么优雅的方式来成为同时具备Python和NCL(最新版本6.62)两种编程工具,使得此电脑成为我的主力科研工具呢?...配置安装其他气象Python的库,建议独立于Conda创建的NCL环境; 指定pip和anaconda的源为清华大学的:https://mirrors.tuna.tsinghua.edu.cn/help...到这里,基本能够同时拥有一台科研生产力电脑了兼备Win10和Linux两种操作系统,同时无缝对接使用NCL和Python了。更多细节就不细说了,遇到具体问题可在文末留言或者在交流群讨论。...Mobaxterm下Jupyter-lab的Python处理数据、绘图 ? Mobaxterm下WSL Ubuntu的~/.zshrc设置截图 4.最后,算彩蛋?
1.使用NCL的方案: short2flt Converts values of type short to values of type float using the "scale" and "offset...链接: https://www.ncl.ucar.edu/Document/Functions/Contributed/short2flt.shtml 2.使用Python的方案: 使用python的netCDF4
NCL中的filwgts_lanczos函数 对于滤波,首先需要构造滤波器,根据需要分为三种:高通滤波器,低通滤波器以及带通滤波器。...NCL提供了filwgts_lanczos函数来构造Lanczos滤波器,其参数总共有nWgt, ihp, fca, fcb, sigma这五个,参数含义取值参见下方或官网函数说明。
目前,有很多工具可以进行WRF模式后处理,比如NCL,Grads,Python,MATLAB等等,而且每一种语言都有其优势。...NCL中有WRF模式后处理的包,可以非常方便的处理WRF模式结果,而近些年Python在气象上的应用也越来越广泛,各种气象相关包也日渐完善。...由于之前主要使用MATLAB处理WRF模式结果(虽然已投入Python的怀抱),而MATLAB中又没有相关函数,便对NCL中的部分函数进行了移植。...因此,本文主要介绍由NCL移植到MATLAB的部分后处理程序。
领取专属 10元无门槛券
手把手带您无忧上云