gnuplot 出力例

陰関数の表示。

 

require 'bundler/setup'
require 'numo/gnuplot'

Numo.gnuplot do
  set term: {png: {size: [600, 600]}}
  set output: "output.png"  
  set "multiplot"
  set xrange: -10..10
  set yrange: -10..10

  set "contour"
  set "cntrparam levels discrete 0"
  set style: "line 1 lw 2"
  set style: "increment user"
  set isosamples: [100, 100]
  unset "surface"
  unset "ztics"
  set border: 15
  set view: [0, 0]
  set "zeroaxis"
  unset "key"
  set size: [1.2, 1.2]
  
  splot "x ** 2 + x * y + y ** 2 + 7 * x - 4 * y + 27"
  splot "x ** 2 - 4 * y + 4 * x * y"
end

 
媒介変数表示で同じグラフを描く。

require 'bundler/setup'
require 'numo/gnuplot'

Numo.gnuplot do
  set term: :png
  set output: "output1.png"
  set :multiplot
  set :parametric
  set xrange: -10..10
  set yrange: -10..10
  
  set :grid
  set size: :square
  unset "key"
  
  set trange: 0..(Math::PI * 2)
  plot "-6 + 2 * cos(t) + 2 * sin(t) / sqrt(3), 5 - 2 * cos(t) + 2 * sin(t) / sqrt(3)", lw: 2, lc: {rgb: "blue"}
  set trange: 0..(Math::PI * 2 - 0.01)
  plot "1 - 1 / (4 * cos(t)) + tan(t) / 4, -0.5 + 17 / (16 * cos(t)) + 15 * tan(t) / 16", lw: 2, lc: {rgb: "blue"}
end



require 'numo/gnuplot'

Numo.gnuplot do
  set term: :png
  set output: "output.png"  
  set "multiplot"
  set xrange: -4..4
  set yrange: -4..4

  set "contour"
  set "cntrparam levels discrete 0"
  set style: "line 1 lw 2"
  set style: "increment user"
  set isosamples: [100, 100]
  unset "surface"
  unset "ztics"
  set border: 15
  set view: [0, 0]
  set "zeroaxis"
  unset "key"
  set size: [1.2, 1.2]
  
  splot "x ** 2 + (y / 3) ** 2 - 1" 
  splot "7*x**2 + 3*y**2 + 4*sqrt(3)*x*y - (3+12*sqrt(3))*x +(3*sqrt(3) - 18)*y + 27 - 9*sqrt(3)"
end