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 ...
随机推荐
- Java应用发布后,需要关注的7个性能指标
在某个重大发布之后,都需要记录相应的指标,本文介绍了最重要的几个 Java 性能指标,包括响应时间和平均负载等.为理解应用程序在生产环境中如何运行,就需要遵循一些 Java 性能指标. 在以前,当软件 ...
- python流程控制语句 ifelse - 4
嵌套 #! /usr/bin/python a = int(input ("请输入一个整数:")) : : print ("无法显示") else : prin ...
- JavaScript获取DOM元素位置和尺寸大小
在一些复杂的页面中经常会用JavaScript处理一些DOM元素的动态效果,这种时候我们经常会用到一些元素位置和尺寸的计算,浏览器兼容性问题也是不可忽略的一部分,要想写出预想效果的JavaScri ...
- Sails 自定义 model 方法
Sails 自定义 model 方法 在 Sails 中 model 提供了一些原生的静态方法,如 .create(), .update(), .destroy(), .find(), 等. 在实际业 ...
- excel跨表数据链接
按=,然后选择第二个页签下某个数据. 去掉$号,就可以下拉数据
- View页面根据权限显示不同的内容
1.View中根据权限显示相关操作按钮 @if (CoreTools.CheckAction(HttpContext.Current, "Delete")) { ...
- leetcode:String to Integer (atoi)
Implement atoi to convert a string to an integer. Hint: Carefully consider all possible input cases. ...
- UESTC 1074 秋实大哥搞算数 栈模拟
秋实大哥搞算数 Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit S ...
- 启用ntp服务
1. 主服务器 修改配置vi /etc/ntp.conf restrict 192.168.2.0 mask 255.255.255.0 nomodify notrap #允许别的服务器同步 serv ...
- 《自己动手写操作系统》pmtest2笔记
;DispReturn模拟一个回车的显示,(让下一个要显示的字符在下一行的开头处显示),其中edi始终指向要显示的下一个字符的位置.; ------------------------------ ...