您必须在palette命令中包含该sp命令:
set pm3d at s
set palette rgbformulae 33,13,10
set contour
unset clabel
set cntrparam levels incremental -100,10,100
sp x*y w l ls 7 palette notitle
Run Code Online (Sandbox Code Playgroud)
该palette选项会将您的定义从 line 应用2到等高线,您将得到以下图:

注意:由于缺少合适的输入文件,轮廓级别已更改为-100,10,100适应x*y我选择绘制的函数。
如果你想在表面上保留一个黑色网格,我建议使用multiplot并简单地在表面顶部绘制网格。这是更新后的代码:
set pm3d at s
set palette rgbformulae 33,13,10
set contour
unset clabel
set cntrparam levels incremental -100,10,100
set multiplot
sp x*y w l ls 7 palette notitle
unset contour
sp x*y w l ls 7 notitle
unset multiplot
Run Code Online (Sandbox Code Playgroud)
unset两个绘图命令之间的轮廓很重要。这样,您将只使用第二个sp命令获取网格(并且palette那里也没有选项)。
现在,该示例如下所示:

如果您尝试手动旋转使用 - 命令生成的图形multiplot,您将失去等高线(因为它们是首先绘制的),如本答案中所述。如果默认方向不适合您的需要,请set view在调用 multiplot 之前使用。