関数のグラフを描く場合、普通はxの値に対応したyの値をプロットしていきます。 これとは異なる方法で、媒介変数表示( Wikipedia )という表し方があります。円のような曲線をグラフに描く場合の数式の表し方として便利とかなんとか。 媒介変数表示とは 少し説明してみると、ある変数tがあるとして、このtに対応して x = cos(t) y = sin(t) のようにxとyを決める関数がある、というようなものでしょうか。適当に図で説明するとこんな感じになるかと思います。 gnuplotで媒介変数表示をする方法 (set parametric) この媒介変数表示をgnuplotで使うには「set parametric」と設定します。これで二次元プロットでは「t」、三次元プロットでは「u, v」の変数を使って媒介変数表示が出来るようになります。三次元の方は2つ変数が使えるのですが、ちょっとイメージし難いですね…。三次元空間に球などを表現する場合に便利なようです。 変数のデフォルト値) またデフォルトではt, u, vの変数の値は[-5:5]となっているようです。 この値はそれぞれtrange、urange、vrangeを設定することで変更できます。 samplesの設定 あと円を描いてもややカクカクしたグラフになってしまう場合はsamplesの設定を見直すといいかと思います。 (参考 : gnuplotで関数プロットの形がおかしい場合 : samplesの値の設定について ) 実際の媒介変数表示のグラフの例 最後にちょっとしたグラフの例を載せておきます。 円を描く関数をちょっと手を加えて三次元に表すようにしています。 gnuplot> set parametric gnuplot> splot sin(u),cos(u),u w p もう少し手を加えてみましょう。 gnuplot> splot sin(v)/10,cos(v)/10,v w p, sin(v)/5,cos(v)/5,v w p pointtype 2, sin(v)/3,cos(v)/3,v w p, sin(v)/2, cos(v)/2,v w p, sin(v)/1.5, cos(v)/1.5,v w p