2016-12-13 24 views
1

移動xlabel和ylabel到zeroaxis位置。在gnuplot的,我使用如何在的gnuplot

set style line 11 lc rgb '#222222' lt 1; 
set border 3 back ls 11; 
set zeroaxis linetype 1 linecolor rgb '#222222'; 
set xtics axis; 
set ytics axis; 
set border 0; 
set style line 12 lc rgb '#808080' lt 0 lw 1 
set grid back ls 12 
set xtics add ('' 0) 
set ytics add ('' 0) 
set xlabel 'x' font 'Times-Italic,14' 
set ylabel 'y' rotate by 0 font 'Times-Italic,14' 

和這個移動軸線從邊界到軸的0值。然而,xlabel和ylabel留在邊界,給他們奇怪的位置。是否有一種將軸標籤設置到軸零值位置的通用方法?

enter image description here

回答

1

使用通用set label定位這樣的標籤。然後您可以使用和first座標來定位標籤。

y標籤: x軸的起點位於graph 0, first 0(圖的最左點和y方向的零位)。現在,通過一個附加的1個字符寬度與offset char -1,0轉移標籤到左和右對齊:

set label 'y' at graph 0, first 0 offset char -1, char 0 right font 'Times-Italic,14' 

的x標籤: y軸的起點是在first 0, graph 0。通過額外的1個字符寬度移標籤的底部和居中:

set label 'x' at first 0, graph 0 offset char 0, char -1 center font 'Times-Italic,14' 

注意,與此您必須手動進行留足夠多的空間和圖下方,以適應標籤,例如

set lmargin 3 
set bmargin 2 

完整的示例:

reset 
set zeroaxis linetype 1 linecolor rgb '#222222' 
set xtics axis 
set ytics axis 
set border 0 
set style line 12 lc rgb '#808080' lt 0 lw 1 
set grid back ls 12 
set xtics add ('' 0) 
set ytics add ('' 0) 
set label '{/:Italic x}' at first 0, graph 0 offset char 0, char -1 center font 'Times New Roman,14' 
set label '{/:Italic y}' at graph 0, first 0 offset char -1, char 0 right font 'Times New Roman,14' 
set lmargin 3 
set bmargin 2 
plot x + 2 

enter image description here

注意,對於獲得斜體標籤語法只用版本中引入了5