gnuplotはUNIXに限らずWindowsやMachintoshでも動作し,Excelとくらべものにならない くらい美しいグラフの作成が可能である.しかも,フリーである.諸君は卒業研究の グラフ作成に使うのが良いだろう.実験実習程度のグラフならExcelでも作成可能ではあ るが,そのグラフは醜く,とても科学技術の報告書や論文に載せるクオリティに達してい ない.
さらに,gnuplotはC言語などプログラミング言語と組み合わせて使うと,様々な処理が自 動的にできる.そのようなことから,私はコンピュータープログラムによる数値計算の結 果の表示に使っている.
マニュアル類はwebにたくさんある.情報が必要になれば,以下のサイトを調べるのが 良いだろう.
http://t16web.lanl.gov/Kawano/gnuplot/
http://lagendra.s.kanazawa-u.ac.jp/ogurisu/manuals/gnuplot-intro/
$ gnuplot
gnuplot> exit
とする.
gnuplot> set samples 1024
まずは,三角関数のグラフを書いてみよう.以下のコマンドを入力する.
gnuplot> plot sin(x)
gnuplot> plot [0:6.28] [-1.5:1.5] sin(x)
gnuplot> plot [-6.28:6.28] [-1.5:1.5] sin(x),cos(x),tan(x)
さらに,定義した関数のグラフを書くこともできる.
gnuplot> plot x**3+x+1 gnuplot> plot x**0.5 gnuplot> plot log(x) gnuplot> plot log10(x) gnuplot> plot real(exp({0,1}*x)) gnuplot> plot sqrt(x)
gnuplot> f(x)=sin(x) gnuplot> g(x)=cos(x) gnuplot> plot f(x)+g(x), f(x)*g(x)
gnuplotには付録の表2のような関数が用意されて いる.普通に使う関数はほとんど用意されているし,複素数もサポートされている.複素 数は,実数部,虚数部のように記述する.すなわち,
gnuplot> {1,0} 実数の1を表す. gnuplot> {0,1} 虚数単位を表す. gnuplot> {5.3,6.8} を表す.
gnuplot> splot x**2+y**2 gnuplot> splot x*sin(x+y)
3次元グラフで隠線処理が必要であれば,set hidden3dとする.また,表示するデー タ点は,set isosampleで設定する.たとえば,以下のようにすれば,隠線処理し,x方向とy方向とも40点のデータを出力する.
gnuplot> set hidden3d gnuplot> set isosample 40,40 gnuplot> splot 1/(x*x+y*y+5)*cos(0.1*(x*x+y*y))
gnuplot> set parametric gnuplot> plot sin(5*t), cos(2*t+pi/2)
gnuplot> set noeparametric
gnuplot> plot "trifunc.txt" using 1:2
gnuplot> plot "trifunc.txt" using 1:2 with line
gnuplot> plot "trifunc.txt" using 1:2 with line, "trifunc.txt" using 1:3 with line, "trifunc.txt" using 1:4 with line
gnuplot> set yrange[-1.5:1.5] gnuplot> replot
諸君が使う代表的な出力先やファイルフォーマットを表1 に示す.ディスプレイからファイルに出力先を変更するには,次のようにする.
gnuplot> set terminal emf gnuplot> set output "hogehoge.emf"
gnuplot> set terminal emf gnuplot> set output "hoge.emf" gnuplot> plot sin(x)
これを MS Word に貼り付けるのは簡単である.
もし,emfフォーマットで張り付けができなければ,他のフォーマットを試してみる.
gnuplot> set terminal epslatex gnuplot> set output "hoge.eps" gnuplot> plot sin(x)
そうすると,hoge.eps と hoge.tex というファイルができあがるので,それをLATEXの ソースに以下のように組み込めばよい.
\documentclass[10pt,a4paper]{jarticle} \usepackage{graphicx} \begin{document} \begin{figure}[hbtp] \input{hoge} \caption{三角関数のグラフ} \end{figure} \end{document}