Gnuplot如何关闭y轴、添加绘图前间隙并居中x轴刻度数字
Gnuplot两个配置问题解决方案
问题1:关闭y轴并预留绘图前间隙
unset yzeroaxis 无效是对命令作用的理解错误:yzeroaxis 控制的是y=0坐标位置的水平参考线,和图表左侧的y轴边框没有关系。
实现需求按以下步骤修改:
- 全局默认关闭左侧y轴边框:将原代码中
set border替换为set border 13。Gnuplot边框编码规则为1=下边框、2=左边框、4=上边框、8=右边框,13为1+4+8的和,即保留底、顶、右三个边框,隐藏左侧y轴边框。 - 预留绘图间隙:调整全局偏移配置,将原
set offsets 0.5,0.5修改为set offsets graph 0.04, 0.04, 0.05, 0.05,参数依次对应x轴左、x轴右、y轴下、y轴上的绘图区间隙,数值为相对绘图区的比例,可根据需要调整大小。 - 对于第一列需要显示y轴的子图,在对应子图配置块内单独添加
set border 15(即1+2+4+8,打开全部四个边框),同时配置set ytics border out nomirror 2、set format y '%g'显示y轴刻度即可。 - 额外笔误修正:原代码第一个子图的plot语句多写了一个
plot关键字,即plot plot \属于语法错误,删掉多余的plot才能正常运行。
问题2:x轴刻度数字居中对齐
显式指定x轴刻度的对齐属性即可,在全局Settings块添加一行配置:
set xtics center
该配置会强制所有x轴刻度标签的中点对齐到对应刻度线位置,覆盖终端默认的左对齐偏移。
参考效果

内容的提问来源于stack exchange,提问作者Flolaffel
相关产品推荐
相关产品推荐

