使用 pm3d 更改 Gnuplot zrange

Gnuplot zrange change with pm3d

我有一个数据,当我用线图绘制时,我得到了正确的最小值和 zrange。如下图LINE plot with correct zrange

set ticslevel 0
spl 'surf_laplace3.dat' w l 

但是,当我使用 pm3d 时,范围会自动更改,最小值也会自动更改。 pm3d plot

set pm3d
set dgrid3d 300,300
set ticslevel 0
splot 'surf_laplace3.dat' w pm3d 

如果我在 dgrid3d 中使用少于 300,300.. 密度图甚至更低 dat file is here 谁能帮我吗 ?

这与pm3d无关,而是由dgrid3d引起的。此选项将导致 gnuplot 在 300x300 网格上插入数据。根据插值函数,这将更改您的数据点。

因为您的数据点已经形成一个完整的网格,所以您根本不应该使用 dgrid3d。您需要做的就是让 gnuplot 清楚数据中的新行何时开始(即 x 值何时更改)。您可以通过在数据文件中每 301 行添加一个空行来实现。然后你只需从

得到正确的结果
splot "surf_laplace3.dat" w pm3d