有什么方法可以使用gnuplot从gnuplot 4D图中获取图的一部分吗?

时间:2019-10-25 10:14:40

标签: gnuplot

我有一个包含四列的文件。我已经使用gnuplot工具绘制了4D图,如下所示。

使用'test.dat'u 1:2:3:($ 4 <200.0?$ 4 / 4.184:1/0)w pm3d

现在,我想看一下其X轴是某个恒定值的绘图。假设第一列为0.3时,我想查看由2、3、4列构成的3D图。

1 个答案:

答案 0 :(得分:1)

您不显示数据,所以我假设了一些。 类似于使用三元运算符确定颜色时,您可以“过滤”具有恒定x + dx的切片。

代码:

### slice from 4D data
reset session

# create some test data
f(x,y) = x**2 + y**2
c(x,y) = x + y
set print $Data
    do for [i=-10:10] {
        do for [j=-10:10] {
            print sprintf("%.3f %.3f %.3f %.3f", i, j, f(i,j), c(i,j))
        }
        print ""
    }
set print

set xrange [-10:10]
set yrange [-10:10]
set zrange [0:200]
set cbrange [-20:20]

SliceX = 5
dx = 1
set multiplot layout 1,2

    splot $Data u 1:2:3:4 w pm3d notitle 
    splot $Data u ($1>=SliceX && $1<=SliceX+dx?$1:NaN):2:3:4 w pm3d notitle 

unset multiplot
### end of code

结果:

enter image description here