next up previous contents
: x座標とy座標の自動割り付け : 3次元データファイルのプロット : 単純な3次元データファイルのプロット 目次

網かけグラフのプロット

ところで, 3次元の関数をプロットするときには 関数のグラフに網かけをすることで関数の形状が 表現されたわけですが, 同じことをデータファイルに 対して実行するときには, いくつか注意が必要です.

そもそも網かけグラフとはどのようなものかというと, xy平面に置かれた格子を曲面$ z=f(x,y)$に投影した影, すなわち, 曲面$ z=f(x,y)$が光を半分透過するスクリーンであり, xy平面に格子が置かれていて, xy平面の下の方から 拡散しない光をあてたときに, 格子が曲面$ z=f(x,y)$ 上に作る像を斜めから見ているものです(図9.42).

図 9.42: 網かけグラフの作り方
\includegraphics[scale=1]{EPS/gnuplot-3d-mesh-concept.eps}
関数のグラフを作成するときにはこの格子が自動的に作成されたのですが, 3次元データファイルから網かけグラフを作るときには, この格子を 自分で作成しておく必要があります.

具体的には, たとえば図9.43(a)に示すように,

のようなデータを作成しておきます(ブロックとは, データファイル中の空白行で区切られた かたまりのことでした). なお, どのブロックも同じ数のデータ点を含むようにしないと いけません.

9.43(a)のファイルの名前を 3d1.dat としましょう. このファイルを

  splot '3d1.dat' with linespoints pt 6 ps 2 [Enter]
によってプロットすると, 図9.43(b)のような 網かけグラフが作成できます.

図 9.43: 3次元データの網かけグラフそのグラフ
\includegraphics[scale=1]{EPS/15-file.eps}
\includegraphics[scale=1]{EPS/gnuplot-data-3d-1.eps}
(a) データファイル 3d1.dat (b) グラフ

実は, 図9.43の例は実際には 網かけグラフを作成しているわけではなく, 同じブロックに含まれる データ点のあいだを線で結んでから各々のブロックを結ぶ線を補っているだけです.



Shigeru HANBA 平成17年7月16日