Я не знаю о прямой функции Gnuplot, которая позволила бы сделать это, тем не менее, можно использовать обходной путь.
Например, можно сбросить тик в нулевой позиции и вместо него разместить там собственную метку:
set terminal pngcairo enhanced font ",14"
set output 'fig.png'
set multiplot
xMin = 0
xMax = 2*pi
set xr [xMin:xMax]
set yr [-1:1]
set xtics out nomirror
set ytics out nomirror
set ytics add ("" 0)
set label "0" at xMin,0 offset char -1.5,0 right textcolor rgb "blue"
plot sin(x) w l t 'sin(x)'
В качестве альтернативы можно использовать технику, основанную на multiplot
, где стратегия в основном сначала состоит в том, чтобы построить интересующую функцию / данные без тика в нулевой позиции, а затем наложить ее на график, который является пустым, но для настраиваемого тик в нулевой позиции:
set terminal pngcairo enhanced font ",14"
set output 'fig.png'
set xr [0:2*pi]
set yr [-1:1]
set xtics out nomirror
set ytics out nomirror
set ytics add ("" 0)
plot sin(x) w l t 'sin(x)'
set lmargin at screen GPVAL_TERM_SCALE * GPVAL_TERM_XMIN / (1.*GPVAL_TERM_XSIZE)
set rmargin at screen GPVAL_TERM_SCALE * GPVAL_TERM_XMAX / (1.*GPVAL_TERM_XSIZE)
set bmargin at screen GPVAL_TERM_SCALE * GPVAL_TERM_YMIN / (1.*GPVAL_TERM_YSIZE)
set tmargin at screen GPVAL_TERM_SCALE * GPVAL_TERM_YMAX / (1.*GPVAL_TERM_YSIZE)
unset border
unset key
unset xtics
unset ytics
set ytics ("0" 0) out nomirror textcolor rgb 'blue'
plot 1/0
Оба подхода приводят к почти одинаковому сюжету: