| 
 
	积分169贡献 精华在线时间 小时注册时间2013-12-13最后登录1970-1-1 
 | 
 
| 
以下是在linux下 运行的load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
x
登录后查看更多精彩内容~您需要 登录 才可以下载或查看,没有帐号?立即注册 
  load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
 begin
 diri ="文件的绝对路径(上一级路径)"
 fils = systemfunc("ls " + diri + "文件名(模糊的文件名)*. grib2") // 这个是把括号里的命令传递给linux, 然后把结果以字符串的形式传递给fils
 f = addfiles(fils, "r")
 ListSetType(f , "cat") // 如何排列添加的多文件,这里需要说明后面的参数,有两个参数(join ,cat) ,其中join 是把多个文件并列排布,就把每个文   件当成一个数组, join就是按文件添加的顺序(源文件的排列顺序), 并排或者顺着排列,这样就f 相比元数据多出一维,多出的维就是文件的序号,例如f[0,:,:,:] ,这个就是读取第一个文件的所有数据。 cat 参数是把所有文件的元数据都串联起来,生成一个和元数据一样维数的数组,数据排列也是按照添加的顺序,这样的话,数据数量,就是文件数*元数据第一维的数量。
 v = f[:]-> UN  // UN代表你需要添加元数据
 // 下面求多文件的累加和平均
 v1 = dim_avg_n(f , n) // 后面一个n代表你要对f的哪个维求平均,这里要说明的是,就是 对那个维求平均的话,例如对time变量平均,就是把time上的数据点,累加在平均,放到它对应的经纬度的栅格点上(图在后面)。
 v2 = dim_sum _n(f ,n ) // 后面一个n代表你要对f的哪个维求和,和avg 很相似只是把time轴上的所有值相加,放到它对应的经纬度的栅格点上(图在后面)
 三维栅格点图   
 
 
 
 
 | 
 评分
查看全部评分
 |