#! /usr/local/bin/ruby#-----------------------------------------------# Ruby script to draw a graph by gnuplot.(Ex.1)#-----------------------------------------------require'gnuplot'Gnuplot.opendo|gp|Gnuplot::Plot.new(gp)do|plot|plot.xrange"[-10:10]"plot.title"作成例1"plot.xlabel"x"plot.ylabel"y"plot.gridplot.data<<Gnuplot::DataSet.new("sin(x)")do|ds|ds.with="lines"ds.linewidth=2endplot.data<<Gnuplot::DataSet.new("cos(x)")do|ds|ds.with="lines"ds.linewidth=2endendend
#! /usr/local/bin/ruby#-----------------------------------------------# Ruby script to draw a graph by gnuplot.(Ex.2)#-----------------------------------------------require'gnuplot'Gnuplot.opendo|gp|Gnuplot::Plot.new(gp)do|plot|plot.terminal"png enhanced font 'IPA P ゴシック' fontscale 1.2"plot.output"gnuplot_2.png"plot.title"作成例2"plot.xlabel"x"plot.ylabel"y=x^3-2x+2"plot.gridx=(-20..20).collect{|v|v.to_f/10.0}y=x.collect{|v|v**3-2*v+2}plot.data<<Gnuplot::DataSet.new([x,y])do|ds|ds.with="linespoints"# 点のみなら "points"ds.linewidth=2ds.linecolor=3ds.notitleendendend
#! /usr/local/bin/ruby#-----------------------------------------------# Ruby script to draw a graph by gnuplot.(Ex.3)#-----------------------------------------------require'gnuplot'Gnuplot.opendo|gp|Gnuplot::SPlot.new(gp)do|plot|plot.terminal"png enhanced font 'IPA P ゴシック' fontscale 1.2"plot.output"gnuplot_3.png"plot.set"object 1 rect from screen 0,0 to screen 1,1 fc rgb '#D0D0E0' fillstyle solid 1.0 behind"plot.title"作成例3"plot.xrange"[-10:10]"plot.yrange"[-10:10]"plot.xlabel"x"plot.ylabel"y"plot.zlabel"z"plot.pm3dplot.gridplot.data<<Gnuplot::DataSet.new("sin(x)*cos(y)")do|ds|ds.with="lines"ds.linecolor=6endendend