45.2 Grid data

3 次元描画のためのルーチンは、個々の網目の格子においては一つの標本点と 一つのデータ点がある、という形の格子状データ用に設計されています。各 データ点は、関数の値を評価すること (set isosample 参照)、またはデータ ファイルを読み込むこと (splot datafile 参照) によって生成されます。 "孤立線" という言葉は関数に対しても、データに対してもその網目の線を表す ものとして用いられます。網目は、必ずしも x, y に関する長方形でなくても よく、u,v で媒介変数表示されても構わないことに注意して下さい。 set isosamples を参照して下さい。

しかし、gnuplot はそのような形式を必ずしも必要とはしません。例えば 関数の場合は、samplesisosamples と違っていても構いません。 すなわち、x-孤立線のうち、1 本の y-孤立線と交わないものがいくつかある ことがあります。データファイルの場合は、個々のデータブロックのばらつい た点の個数が全て同じであれば、"孤立線は" はデータブロックの点を結び、 "横断孤立線" は各データブロックの対応する点同士を結び、"曲面" を作ろう とします。どちらの場合でも、等高線、および隠線処理モードは点が意図した フォーマットであった場合とは違った描画を与えることになります。ばらつき のあるデータは set dgrid3d によって{異なる}格子状データに変換すること ができます。

等高線に関するコードは、y-孤立線の点と、それに対応する隣の y-孤立線上 の点の間の線分に沿っての z の張力を計測します。よって、x-孤立線に、 y-孤立線との交点とはならないような標本点があるような曲面に対しては、 splot の等高線はそのような標本点を無視することになります。以下を試して みて下さい:

      set xrange [-pi/2:pi/2]; set yrange [-pi/2:pi/2]
      set style function lp
      set contour
      set isosamples 10,10; set samples 10,10;
      splot cos(x)*cos(y)
      set samples 4,10; replot
      set samples 10,4; replot

竹野茂治@新潟工科大学
2008年3月11日