Gnuplot x轴上的标签始终不在绘图范围内

Gnuplot x轴上的标签始终不在绘图范围内,gnuplot,Gnuplot,直方图没有这样的问题;每当使用boxerrorbars时,总是在绘图外放置一个条。。。(在本例中,请看右下角的B) 为什么不能得到这样的输出 我想问一下($0+0.25)是什么意思,它似乎控制着盒子的位置 | | Leaves | | Roots | | | | Mean | Stdev | Mean | Stdev | |----+--------+--------+--------+--------| | N | 40900 |

直方图没有这样的问题;每当使用boxerrorbars时,总是在绘图外放置一个条。。。(在本例中,请看右下角的B) 为什么不能得到这样的输出

我想问一下
($0+0.25)
是什么意思,它似乎控制着盒子的位置

|    | Leaves |        | Roots  |        |
|    |   Mean | Stdev  |   Mean | Stdev  |
|----+--------+--------+--------+--------|
| N  |  40900 |   3576 |  35600 |  282.8 |
| P  |   4430 |    476 |   5115 |  586.8 |
| K  | 115367 |   5615 |  19650 | 2192.0 |
| Ca |  21517 |   1657 |   8190 | 2701.1 |
| Mg |   5060 |    939 |   3745 |   77.7 |
| Fe |    112 |    9.1 |   1841 |  683.1 |
| Mn |   41.8 |    3.0 |   58.7 |    2.5 |
| Zn |  49.81 |   16.1 |     13 |    0.0 |
| B  |   62.6 |    4.1 |   57.3 |    5.7 |

reset
set terminal pngcairo size 1000,800 enhanced font 'WenQuanYiZenHei,15'
set title "Mean(Leaves)"
set xlabel "Element"
set ylabel "Conc.(ppm)"
set ytics nomirror
set auto x
set boxwidth 0.2
set style histogram errorbars linewidth 1
#set logscale y 10
load 'gnuplot-colorbrewer/qualitative/Dark2.plt'
unset logscale y
plot data u ($0+0.25):2:3:xticlabels(1) ls 1 lw 2 pt 4 w boxerrorbars ti 'element conc.',\
      data using 0:2:2 with labels center offset 0,1 notitle

使用
设置偏移量
将自动缩放X范围的左右边界展开一点:

set terminal pngcairo size 1000,800 enhanced
set output 'data.png'
set ytics nomirror
set boxwidth 0.2
set offset 0.5,0.5,0,0
plot 'data' u 0:2:3:xticlabels(1) ls 1 lw 2 pt 4 w boxerrorbars ti 'element conc.',\
      'data' using 0:2:2 with labels center offset 0,1 notitle


零件
($0+0.25)
确实改变了框相对于第二部分中绘制的标签的位置。如果你不想要这个,就别管它了。用
offset
参数纠正数字标签的位置应该足够了,就像您已经做的那样。

但是如果我删除
($0+0.25)
,它会说
没有足够的列来显示此样式。我应该留下什么来不移动任何东西?我不明白为什么柱状图不需要这个列。你能解释一下
($0)
是什么意思吗?第0列是行号,即
使用0:2:2
将框放置在与行号对应的x值处,
使用($0+0.25):2:2
取行号加0.25。
直方图
样式自动选择其x值,因此在本例中不需要该部分。