前節と同様に, y 方向に座標値が等間隔な場合にも, Y を指定するか わりに rundef を指定します. 次のプログラム U1D2 では, Fig.inclpoint, Mark.draw, Plot.draw の各メ ソッドで Y を未定義値と しています. ここでは Fig.inclpoint メソッドを使ってウインドウを決め, ビュー ポートの設定は初期値に頼ります. なお, 変換関数番号を 3として, 片対数座標にしています.
# # u1d2.rb require "narray" require "numru/advanceddcl" include NumRu::AdvancedDCL include NMath nmax = 50 ymin = 0.0 ymax = 50.0 x1 = NArray.sfloat(nmax+1) x2 = NArray.sfloat(nmax+1) #-- data ---- iseed = 0 for n in 0..nmax y = ymin + (ymax-ymin)*n/nmax x1[n] = 10.0*(exp(-y/20))**2 * exp((rand(iseed)-0.5)*2)**2 x2[n] = 10.0*(exp(-y/20))**2 end rundef = Common.rundef #-- graph ---- Dev.open Frame.new Fig.window = [rundef, rundef, ymin, ymax] Fig.inclpoint(x1, rundef) Fig.inclpoint(x2, rundef) Fig.transnum = 3 Axis.title('MIXING RATIO', 'ppmv', 'HEIGHT', 'km') Axis.draw Mark.marktype = 2 Mark.draw(x1, rundef) Plot.draw(x2, rundef) Dev.closePROGRAM U1D2