zoukankan      html  css  js  c++  java
  • GrADS,NCL一些经验

    GrADS经纬度比例方法

    *取消经纬比例自动调整
    'set mproj scaled'

    设置绘图区域,使得一致
    'set vpage 1 7 1 7'

    GrADS画特定经线方法

    set clevs 23.5; d lat
    set clevs 120;d lon
    GrADS 查看多个打开文件的ctl
    q ctlinfo 1
    q ctlinfo 2
    ...
    2个不同的缺测值 fwrite更改默认缺测值
    GrADS用fwrite输出时,默认的缺测值是-9.9900000E+08,如果输入源的缺测值与之不一致,则会出现两种缺测值的情况。解决的办法,可以在fwrite 声明后面设置默认缺测值设置。比如
    'reinit'
    'open J:/ec79-15/ansnablameansst79_15.ctl'
    'set t 1 12'
    'save=ave(absnablamsst,t+0,t=444,12)'
    'modify save seasonal'
    'set gxout fwrite'
    'set undef 9.999E+20'
    'set x 1 480'
    'set y 1 89'
    'set fwrite J:/ec79-15/seasonal.grd'
    'd save'
    'disable fwrite'
    'reinit'
    ;
    (注:modify save seasonal命令意为将save变量修改成季节变量,方便与其它不同大小的变量计算(比如求季节距平),此外modify还有另外一个选项diurnal日变化)
    NCL使用自定义色标
    清风给的调色盘确实好用,生成的rgb格式也可以。但是最近再次遇到了ncl无法正常读取colormap错误的问题,参考了一下官网。最后发现是这样的。官网给出的文件有“ncolors=8”这一行,用NCL调色盘生成的脚本也有这一句话。但是在我的ncl里面无法使用。最后删了这一句话之后就好了。另外,注意前两行是用来定义底色和填色的。需要手动添加。比如加的是“255 255 255”和“0 0 0”这两行。最后能正常生成了。(一句话,用GrADS调色盘生成的rgb文件需要删掉nclolors这一行,并在文件最前面加上“255 255 255”和“0 0 0”这两行(定义底色))
    (注:今天发现rgb文件最后一行上也要加,貌似是这样的:第一行定义,第二行定义填充线色,最后一行表示背景色)
    GrADS使用NCL色标
    (20171102注:GrADS使用colormap命令使用NCL色标时候,出现了一个问题,发现colormap打开的相关rgb文件在ncolors那一行后面还要有 # r g b 这一行,否则可能无法正常使用。
    Cressman插值(oacre函数)
    oacres函数实际上就是对数据进行多次cressman插值,其插值的影响半径是逐渐减少的,默认的影响半径(单位是格点)是10,7,4,2,1。如果某格点影响半径范围内的站点数目小于3个,那么该格点的值设置为缺测值。(参考http://cola.gmu.edu/grads/gadoc/gradfuncoacres.html)
    oacres函数源代码 ftp://cola.gmu.edu/grads/2.1/grads-2.1.1.b0-src.tar.gz,解压后src目录下gafunc.c文件,第5313-5602行
    GRADS色号
    0-黑色,1-白色,2-红色,3-绿色,4-蓝色,5-青色,6-洋红色,7-黄色,8-橘色,9-紫色,10-黄绿色,11-中蓝色,12-深黄色,13-水绿色,14-深紫色,15-灰色
    超过20以上的色号为自定义色号
    GrADS 坐标
    调字体
    set xlopts 4 1 0.1 设置X轴标记数字的颜色、粗细和大小(英寸)
    set ylopts 4 1 0.1 设置Y轴标记数字的颜色、粗细和大小(英寸)
    调坐标间隔
    set xlint interval
    set ylint interval
    set xlevs/ylevs 再控制标记的分布
    GRADS等值线标记
    set clopts color <thickness> <size> >
    设置等值线标记的颜色 粗细 大小
    GRADS 风羽朝向 set hempref auto|nhem|shem

    默认的是坐标在北半球,则风羽朝向风的左侧,在南半球,则风羽朝向风的右侧。一般情况下是没问题的。但是,如果画的是有特殊含义的图(坐标经纬度是相对的经纬度,那么就需要修改这一选项)

    NCL执行出现问题  a warning of 'Get System Resource'

    没有设置NCARG_ROOT环境变量

    NCL读取地图数据

    https://www.ncl.ucar.edu/Applications/topo.shtml

    利用grib2ctl对ERA5预报场数据生成ctl

    grib2ctl -verf 10fg.grib > 10fg.ctl

    gribmap -e -i 10fg.ctl

    对描述多个ERA5预报场数据的ctl文件写法

    注意,通配符应当为%iy4,%iy2,%im2之类的,否则会出现无法读取全部数据的错误!详见http://cola.gmu.edu/grads/gadoc/templates.html

  • 相关阅读:
    [Leetcode] Distinct Subsequences
    [Leetcode] Restore IP Addresses
    [Leetcode] Substring with Concatenation of All Words
    [Leetcode] Palindrome Partitioning II
    [Leetcode] Palindrome Partitioning
    [Leetcode] Maximal Rectangle
    [Jobdu] 题目1493:公约数
    [Leetcode] Merge k Sorted Lists
    [Leetcode] Gray Code
    opencv2-新特性及Mat
  • 原文地址:https://www.cnblogs.com/jiangleads/p/8284326.html
Copyright © 2011-2022 走看看