NCL注意事项:
1.数据运算过程中需要注意数据类型的转换:
(a)部分原始数据是short型,读取的时候利用 short2flt(x)
函数,将数据转换为float型。
点击本句可见该函数官网详细介绍
(b)double型数组可以保留小数点后所有位数,而float型数组只能保留到小数点后6位。那么问题就来了,一般气象数据都是float型,当你和double型数据一起运算,如果转换成float型,那么之后结果都将只有小数点后6位。
点击本句可见该函数官网详细介绍
如果需要保留所有小数点,需要利用 flt2dble(x)
函数 将气象里的float型数据转换为double型,此函数优点是可以保留原属性。
(c)NCL数组运算过程中尽量少使用循环,会慢的难以忍受。善以利用
**conform(x, s, -1)
**函数将相关数组扩展为同样大小,直接 三维数组a三维数组b三维数组c 运算速度远远远大于利用循环去乘。可用:
mask_start_time = get_cpu_time()
..............................................你的代码
mask_end_time = get_cpu_time()
print(mask_end_time)
输出运算时间。
(d)
字体选择
NCL有0-22号、25-26号、29-30号、33-37号、121-137号字体,具体字号样式查询可以在以下网站查看
http://www.ncl.ucar.edu/Document/Graphics/font_tables.shtml
其中22号是我常用来加粗字体的字号
选用字号的方法:
用res@gsnStringFont = 22
若只取用其中的某些特殊字符,可以使用“Fn”选择字体,n表示字体号。如需表示位温θ,可以用“F33q”。
常用字体有:希腊字符33号,数学符号34号,台风标记在35号里,天气现象符号36~37号。 其中需要转换到Roman font时,可以直接用“R”。 大于100号的字体多为空心字体。
上下标
以“B”开始下标、“S”开始上标,以“N”结束。
字的大小微调
第一类:用“XnQ”(字宽)、“YnQ”(字高)、“ZnQ”(整体),n表示调整后的大小是正常的n%。n省略或取0时,默认n=100,即为正常大小。 Q表示调整后的字符与前面输出的字符保持低端对齐。
第二类:“P”:正常大小,“I”:索引字符的大小。