我需要绘制一个离散的3d函数的表面,数据是这样的:
0.5520000 -0.3840000 0.0000001 0.0000001
0.5520000 -0.3760000 6.5919072e-08 5.8261450e-08
0.5520000 -0.3680000 0.0398564 0.0335707
0.5520000 -0.3600000 2.4211279e-08 2.6520126e-08
0.5520000 -0.3520000 0.0000002 0.0000002
0.5520000 -0.3440000 0.1945450 0.1962598
0.5520000 -0.3360000 0.0794571 0.0792212
0.5520000 -0.3280000 1.3106068e-08 1.6226917e-08
0.5520000 -0.3200000 0.3029487 0.3209866
0.5520000 -0.3120000 0.2192498 0.2272512
0.5520000 -0.3040000 0.2904586 0.3077338
0.5520000 -0.2960000 0.2505561 0.2639075
...
我想绘制1:2:3列。我尝试使用简单的gnuplot命令:
splot 'data.dat' u 1:2:3 with pm3d
但我收到以下警告消息:
Warning: Single isoline (scan) is not enough for a pm3d plot.
Hint: Missing blank lines in the data file? See 'help pm3d' and FAQ.
输出为空的3d图。
有人可以帮我吗?
最佳答案
就像警告消息告诉您的那样:您在文件中缺少空白行。要与pm3d
一起使用,数据必须按以下方式组织:
x0 y0 z00
x0 y1 z01
....
x0 yN z0N
x1 y0 z10
x1 y1 z11
...
x1 yN z1N
等等。连续的x值之间必须有一个空白行。