# 使用するライブラリの読み込み require "numru/ggraph" include NumRu # NetCDF ファイル "air.2m.gauss.2021.nc" から変数 "air" を読み, GPhys オブジェクト gp に格納 gp1 = GPhys::IO.open( "air.2m.gauss.2021.nc", "air" ) # NetCDF ファイル "csdsf.sfc.gauss.2021.ncc" から変数 "air" を読み, GPhys オブジェクト gph に格納 gp2 = GPhys::IO.open( "csdsf.sfc.gauss.2021.nc", "csdsf" ) # GPhys オブジェクト gp1 内の変数 "air" から lon=135 lat=35 のデータを切り出す (cut) gp1 = gp1.cut('lon'=>118) gp1 = gp1.cut('lat'=>33) # GPhys オブジェクト gp1 内の変数 "air" から2021年のデータを切り出す (cut) gp1 = gp1.cut('time'=>DateTime.parse("2021-01-01 00:00:0.0")..DateTime.parse("2021-12-31 23:59:0.0")) # GPhys オブジェクト gp2 内の変数 "air" から lon=135 lat=35 のデータを切り出す (cut) gp2 = gp2.cut('lon'=>118) gp2 = gp2.cut('lat'=>33) # GPhys オブジェクト gp2 内の変数 "air" から2015年のデータを切り出す (cut) gp2 = gp2.cut('time'=>DateTime.parse("2021-01-01 00:00:0.0")..DateTime.parse("2021-12-31 23:59:0.0")) # 画面を開く (open) # 図をpdfファイルとして保存 DCL.gropn(2) # 描画に関わる各種の指定 #DCL.sgpset('lfull',true) # 描画範囲を最大に設定 (ウィンドウのギリギリま で使用) DCL.uzfact(0.6) # フォントサイズ (元の値に対する比率) DCL.sgpset('lclip',true) # 軸範囲を超えた領域を描画しない DCL.glpset('lmiss',true) # 欠損値処理 GGraph.set_axes('xlabelint'=>30) # x 軸にラベルを書く間隔 GGraph.set_axes('ylabelint'=>30) # y 軸にラベルを書く間隔 # 描画画面を準備 # itr の 1 は横軸, 縦軸ともに線形を表す GGraph.set_fig( 'itr'=> 1 ) # 散布図の描画 # 第一引数は描画するデータのGPhysオブジェクトX # 第二引数は描画するデータのGPhysオブジェクトY GGraph.scatter( gp1,gp2, true ) # 画面を閉じる (close) DCL.grcls