# 使用するライブラリの読み込み. (以下 2 行は「決まり文句」.) require "numru/ggraph" include NumRu # NetCDF ファイル "skt.mon.mean.nc" から変数 "skt" を読み, GPhys オブジェクト gp に gp = GPhys::IO.open( "skt.mon.mean.nc", "skt" ) t = 0 for i in 1958..1987 # GPhys オブジェクト gp 内の変数 "skt" から time=----.12.01 のデータを切り出す (cut) gpa = gp.cut('time'=>DateTime.parse(i.to_s + "-12-01 00:00:0.0")) t = t + gpa end #tは1958年から1987年の11月の合計、aveは1958年から1987年の12月の平均 ave = t / 30 # GPhys オブジェクト gp 内の変数 "skt" から time=1988.12.01 のデータを切り出す (cut) gpb = gp.cut('time'=>DateTime.parse("1988-12-01 00:00:0.0")) #偏差の計算 gpc = gpb - ave # 画面を開く (open) # 引数の 2 はファイルへの出力を表す DCL.swcset('fname','epcff9') DCL.swpset("ifl",1) DCL.gropn(2) # 描画に関わる各種の指定 # フォントサイズ (元の値に対する比率) DCL.uzfact(0.8) # 軸にラベルを書く間隔 GGraph.set_axes('xlabelint'=>30) GGraph.set_axes('ylabelint'=>30) # 地図情報の指定. ここでは海岸線を描くように設定. GGraph.set_fig('itr' => 10, 'viewport'=>[0.05,0.9,0.25,0.75], 'window'=>[0,360,-90,90]) GGraph.set_map( 'coast_world'=>true, 'grid'=>true ) # トーン (色付け) で描画 # 第一引数は描画するデータの GPhys オブジェクト # 第二引数の true はこの時点では「決まり文句」 GGraph.tone( gpc, true, 'annotate'=>false, 'map_axes'=>true, "max"=>24, "min"=>-44, 'nlev'=>17 ) # カラーバーを描画 GGraph.color_bar # 画面を閉じる (close) DCL.grcls