Map Gnuplot:如何在轴和pm3d地图之间留出一些空间

Map Gnuplot:如何在轴和pm3d地图之间留出一些空间,map,gnuplot,axis,Map,Gnuplot,Axis,这是我的密码: f(x,y)=sin(1.3*x)*cos(.9*y)+cos(.8*x)*sin(1.9*y)+cos(y*.2*x) set size square set xrange [-5:5] set yrange [-5:5] set contour base set cntrparam level incremental -3, 0.5, 3 set palette rgbformulae 33,13,10 set pm3d map set isosample 250, 250

这是我的密码:

f(x,y)=sin(1.3*x)*cos(.9*y)+cos(.8*x)*sin(1.9*y)+cos(y*.2*x)
set size square
set xrange [-5:5]
set yrange [-5:5]
set contour base
set cntrparam level incremental -3, 0.5, 3
set palette rgbformulae 33,13,10
set pm3d map
set isosample 250, 250
unset key
set lmargin at screen 0.05
set rmargin at screen 0.9
set bmargin at screen 0.05
set tmargin at screen 0.9
splot f(x,y) with pm3d
图为:

如何在轴和实际绘图之间留出一些空间,如下图所示:


对于数据集,可以使用
设置偏移量
设置自动缩放修复
来精确实现这一点。因此,一个选项是将数据打印到一个文件(
设置表格“tmp.txt”;splot f(x,y)w l
;unset table`),然后将该文件打印为数据

另一个选项是重新定义函数,对于特定范围之外的样本返回
1/0

我发现最优雅的方式(至少是我发现的)是使用参数模式,并使用比
xrange
yrange
更小的
urange
vrange

reset
f(x,y)=sin(1.3*x)*cos(.9*y)+cos(.8*x)*sin(1.9*y)+cos(y*.2*x)
set size square

set contour base
set cntrparam level incremental -3, 0.5, 3
set palette rgbformulae 33,13,10
set pm3d map
set isosample 250, 250
unset key
set lmargin at screen 0.05
set rmargin at screen 0.9
set bmargin at screen 0.05
set tmargin at screen 0.9

# 5% margin on each side
m = 1.05
set xrange [-m*5:m*5]
set yrange [-m*5:m*5]
set urange [-5:5]
set vrange [-5:5]
set parametric

splot u,v,f(u,v) with pm3d
结果如下(见第4.6.4节):