Вот мой код:
set term pdfcairo enhanced dashed size 5,3;
set output "plot.pdf";
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.1;
set rmargin at screen 0.95;
set bmargin at screen 0.2;
set tmargin at screen 0.95;
splot f(x,y) with pm3d
Вот соответствующий сюжет:
Вокруг графика белые поля. Как мне устранить эти белые поля, отредактировав код gnuplot?
pm3d
иset margins
не любят друг друга. Я бы предложил два варианта: 1) Вы используетеplot ... with image
, для которого вы не можете использовать функции, поэтому вам нужно будет экспортировать свои данные с помощьюtable
. Это позволит вам без проблем устанавливать поля. 2) Вы используете внешнюю утилиту для обрезки PDF-файла. Я обычно используюpdfcrop
. - person Miguel   schedule 07.05.2014size
графика на значение больше, чемset size 1,1
, например.set size 1.5,1.25
, пока изображение не будет соответствовать тому, что вам нравится; это не очень систематично и потребует много проб и ошибок. Из всех трех вариантов использую 1) сам. - person Miguel   schedule 07.05.2014plot '++' using 1:2:(f($1,$2))
, но, к сожалению,plot
не поддерживает контуры, а обычно делает 2d графики. - person Christoph   schedule 07.05.2014set origin
, которое по умолчанию равноset origin 0,0
. Чтобы ваша фигура оставалась в центре, если вы делаетеset size 1.5,1.25
, вы должны компенсировать ее наset origin -0.25,-0.125
. - person Miguel   schedule 07.05.2014