GNUPLOT

- not so Frequently Asked Questions -

update 2004/9/15

3次元プロットのあれこれ (その2)

1 | 2 | 3 | 4

3次元の点のデータから3次元格子を描きたい

3次元表示しようとしているデータが,次のような任意の順序の(x,y,z)の点 の集合である場合を考えます.このようなデータをsplotで表示 すると3次元空間中の点か線のグラフにしかなりません.

# X          Y         Z
  9.862e-01 -8.062e-02   0.001
  9.786e-01 -1.134e-01   0.002
  9.720e-01 -1.382e-01   0.003
 .....   
 -1.849e-01 -2.165e-01  80.000
 -2.412e-01 -1.301e-01  90.000
 -2.611e-01 -4.825e-02 100.000
gnuplot> set xrange [-1:1]
gnuplot> set yrange [-1:1]
gnuplot> set ticslevel 0
gnuplot> splot "datafile.dat" u 1:2:3 with lines
fig/sample6.6a

このようなデータから3次元の格子を描きたいときは,set dgrid3dをあらかじめ指定しておきます.gnuplotは3次元データから 格子を生成して表示します.各格子の高さは,その内部にある点の平均値 から自動的に求められます.描かれる格子の細かさは,set dgrid3d x-mesh, y-mash で指定することができます.

gnuplot> set dgrid3d 30,30
gnuplot> set hidden3d
gnuplot> splot "datafile.dat" u 1:2:3 with lines
fig/sample6.6b
up