如何在gnuplot中整体平移绘图使曲线零点对齐x=0位置
解决方法
你之前写的x=x-4不生效,是因为gnuplot没有全局修改绘图x坐标的语法,要在读取数据列的时候做偏移运算,具体操作如下:
- 修改plot命令的
using参数,对读取的第一列(即原始x值)执行减4操作,语法为($1-4),这里的括号不能省略,否则gnuplot会识别为列号而非运算 - 同步调整x轴显示范围,将原来的
[-1.5:9]整体左移4个单位,改为[-5.5:5],保证曲线显示范围和原来一致
修改后的完整代码如下:
set autoscale unset log unset label set xtic auto set ytic auto set xlabel "X" set ylabel "Y" # 不需要红色箭头可以直接注释掉该行 # set arrow 1 from 3.44,0 to 3.44,150 nohead ls 10 dt 2 lw 2 lc 'red' set xrange [-5.5:5] set yrange [0:150] plot "tot.dos" using ($1-4):2 w l lw 2 lc 'blue' title 'Total' pause -1 "Hit any key to continue \n"
如果后续需要调整偏移量,直接修改($1-4)里的数值即可,比如要左移3.5就改成($1-3.5)。
内容的提问来源于stack exchange,提问作者Wonder
相关产品推荐
相关产品推荐

