windows下ncl生成tiff图(案例)
一:安装软件和准备数据
1.需要安装Vapor(注意安装路径不要存在空格)
注:版本2.4.2及以后
2.安装NCL,方法见http://www.cnblogs.com/striver-zhu/p/4574819.html
注:
a.得包含这两个可执行文件:convert && psplit,一般安装时会自行安装进去
b. NCL_5.1.0版本存在一个问题:wrf2geotiff.ncl中的492行的str_lower需要去掉,否则运行时报错
3.下载数据:jamingWRF2
4.3个ncl文件(NCAR\VAPOR\share\examples\NCL目录下):
wrf_Height.ncl (this plots humidity, temperature, pressure and wind at a fixed elevation)
wrf_Precip.ncl (this plots precipitation tendency with pressure isobars)
wrf_crossSection2.ncl (this is a vertical plot of relative humidity)
二:数据转换
1.将WRF数据转换成VDC数据,从Vapor2.0开始,便不需要转换,但是大数据还是转换以下比较好
通过cmd执行以下命令(进入命令所在目录下):
wrfvdfcreate:扫描WRF数据,生成用于描述WRF数据的Vapor元数据
(wrfvdfcreate wrfout_d02_2008-09-28.nc jangmi-09-28.vdf)
wrf2vdf:将所有的WRF数据中的2D和3D变量转换成Vapor使用的数据格式,即VDC格式
(wrf2vdf jangmi-09-28.vdf wrfout_d02_2008-09-28.nc =》 生成的变量会存在jangmi-09-28_data目录下)
三:
1.将NCL绘制的数据图形转换成georeferenced格式(在工作目录下,需要添加.hluresfile文件,该文件只能通过cygwin的vi建立(:wq退出保存))
wrf_Height.ncl:生成在一个特定平面上的图形()
wrf_Precip.ncl:产生一个呈现降水趋势和海平面压力的图形
wrf_CrossSection2.ncl:产生温度和相对湿度的垂直图形,沿着一个特定的平面上,平行于XZ轴
我们将图形转换成.PS输出文件和将这些.PS文件转换成地理参考TIFF文件
1).修改脚本,使其仅生成一个图像,在每个时间步长。 (如果想在相同的时间步长,使用多个图像,则需要为每个不同的图像的单独运行脚本)
2).修改这个脚本,遍历WRF文件中的所有步长。这可能涉及外循环(循环多个文件)和内循环(循环每个文件中的时间步)
3).修改脚本,输出为.PS文件
4).将下面的新行到NCL脚本:
a.在顶部,插入一行来加载wrf2geotiff.ncl:load “wrf2geotiff.ncl”(存在C:\NCAR\VAPOR\share\examples\NCL)
(这个脚本和其他NCL的例子是默认安装子目录,unix下在share/vapor-x.x.x/examples/NCL,Windows下在$(VAPOR_HOME)/share/examples/NCL/)
b.在NCL工作站创建之后,调用wrf2geotiff=wrf2geotiff_create(wks)
c.如果这是一个垂直图形,禁止地理参考:
wrf2geotiff_disableGeoTags(wrf2gtiff)
d.设置图形属性res@gsnFrame=False
e.图形每生成一次,插入两行:
wrf2geotiff_write()
frame(wks)
f.在文件末尾调用wrf2geotiff_close(),将会合并图形生成tiff格式图形
四:获取地理文件
1.为模拟区域获得地形图片:需要经纬度范围,同时需要联网,进入getWMSImage.sh所在文件夹
cygwin下:getWMSImage.sh –o jangmiTerrain.tiff 115 15 130 30
windows下ncl生成tiff图(案例)的更多相关文章
- 关于windows下c++生成的exe发布时的依赖dll问题
如同linux下通常要求安装特定版本的libstdc++一样,windows下vc++生成的exe发布时的依赖dll问题,可以参见帖子,http://bbs.csdn.net/topics/39105 ...
- Windows下python3生成UTF8的CSV文件和sha256sum踩坑记录
CSV的坑 在Ubuntu下是简单的写入完事 import csv ... with open(filename, 'w') as output: f = csv.writer(output) f.w ...
- Linux、Windows 下手动生成 sha256 等类型的校验文件
目录 1 - 校验文件的作用 2 - Linux 下生成校验文件 3 - Windows 下生成校验文件 参考资料 版权声明 1 - 校验文件的作用 从网服务器下载文件,尤其是比较大的文件时,很容易由 ...
- windows下批量生成文件夹
在windows环境下如果想要批量生成文件夹: 1.创建一个记事本文件 2.首行大写MD 3.后面加上你想创建的文件夹的名字,每个名字之间有空格 4.退出记事本并保存 5.将记事本文件后缀改为bat文 ...
- 【免费】windows下如何生成tar.gz,一键生成tar.gz
废话 一.实验背景 tar.gz 是Linux和Unix下面比较常用的格式,一条命令就可以把文件压缩打包成tar.gz格式,然而这种格式在windows并不多见. Linxu服务器上,tar.gz 包 ...
- windows下怎么生成github的ssh公钥
windows下如何生成github的ssh公钥: 1.首先你要安装Git工具 2.在C:\Documents and Settings\Administrator\目录下,运行Git Bash he ...
- windows 下 openssl 生成RSA私钥公钥以及PKCS8
生成RSA私钥 打开bin文件夹下面的openssl.exe,输入genrsa -out rsa_private_key.pem 1024 把RSA私钥转换成PKCS8格式 输入命令pkcs8 -to ...
- Windows下如何生成数字证书
1.Makecert.exe<证书创建工具>使用说明:http://msdn.microsoft.com/zh-cn/library/bfsktky3.aspx 2.SignTool.ex ...
- windows 下OPENSSL 生成秘钥和公钥的方法
1. 生成原始 RSA私钥文件 private_key.pem openssl genrsa -out private_key.pem 1024 2. 将原始 RSA私钥转换为 pkcs8格式 ope ...
随机推荐
- wordpress学习一: 环境搭建
原来想单独找个linux的机器搞套完整的环境,机器都找好了,环境搞了半天.搞完后,感觉环境什么的不重要,核心是学好php和wordpress,单独的环境维护还开发成本都不小,所以 还是采用 xampp ...
- BigDecimal进行除法divide运算注意事项
Java编程中 BigDecimal进行除法divide运算时,如果结果不整除,出现无限循环小数.则会抛出以下异常: java.lang.ArithmeticException: Non-term ...
- HttpClient基本用法
<Apache HttpClient 4.3开发指南> Apache HttpClient 4系列已经发布很久了,但由于它与HttpClient 3.x版本完全不兼容,以至于业内采用此库的 ...
- Jenkins master在windows上安装
原文:http://www.cnblogs.com/itech/archive/2011/11/02/2233343.html 1 Jenkins Jenkins由以前的hudson更名而来.Jenk ...
- hadoop 1.2.1 eclipse 插件编译
hadoop-1.2.1 eclipse插件编译 在ubuntu上进行hadoop相关的开发,需要在eclipse上安装hadoop开发插件.最新释放出的hadoop包含源码的包,以had ...
- SQL Server ->> GROUPING SETS, CUBE, ROLLUP, GROUPING, GROUPING_ID
在我们制作报表的时候常常需要分组聚合.多组聚合和总合.如果通过另外的T-SQL语句来聚合难免性能太差.如果通过报表工具的聚合功能虽说比使用额外的T-SQL语句性能上要好很多,不过不够干脆,还是需要先生 ...
- 【流媒体】 Android 实时视频编码—H.264硬编码
[流媒體] Android 实时视频编码—H.264硬编码 SkySeraph Apr 4th 2012 Email:skyseraph00@163.com 1 硬编码 & 软编码 硬编码: ...
- 在ump系统的那半个多月-jqGrid
2012.04统一监控平台项目打酱油的日子 系统介绍: 目标,致力于服务于公司内部的所有系统,对所有接入监控的系统进行监控,包括系统监控,URL存活监控,端口存活监控,方法监控等. 作为打酱油的我,没 ...
- bootstrap table 服务器端分页例子
1,前台引入所需的js 可以从官网上下载 function getTab(){ var url = contextPath+'/fundRetreatVoucher/fundBatchRetreatV ...
- Eclipse 下如何引用另一个项目的Java文件
有关联的2个项目,有些类是相同的.例如实体类. 如果你采用 Ctrl + C & Ctrl + V 的方式,以后再有改动,2个项目就都需要改动. 怎样才能只改动一个呢? 答案就是,在一个项目( ...