我有三维数据在3d中绘制表面:
x1 y1 f(x1, y1)
x1 y2 f(x1, y2)
.. .. ..
x1 yn f(x1, yn)
x2 y1 f(x1, y1)
x2 y2 f(x1, y2)
.. .. ..
x2 yn f(x1, yn)
.
.
我可以使用gnuplot来获取x =常量的水平曲线:
plot "datafile.txt" u 2:3 index 0 //or index 1 etc
如何获得y =常数的图?
感谢您提前回复......
答案 0 :(得分:1)
第一种可能性:绘制整个文件,并使所有不需要的数据点无效(NaN或1/0)
yfix = 5 # the constant y value
plot datafile using (($2 == yfix) ? $1 : NaN):3
第二种可能性:every
说明符
n = 3 # number of the wanted sample in y-direction
plot datafile every ::n::n using 1:3
选项(line increment):(block increment):(first line):(first block):(last line):(last block)
因此,上面的命令只绘制每个块的第n行。数据集。
(注意:块由一个空行分隔,数据集由另外一个空行分隔。后者用index
指定,前者通过every
解决)