Gnuplot在打印负数时使用连字符 - 减号(U + 002D)(例如,刻度标签)。我想让Gnuplot使用unicode减号(U + 2212)。
通常,我依赖于以下解决方法之一:
set xtics (-0.05 "−0.05", ...)
; epslatex
)导出绘图,并将数字括在$$
内(例如set format x "$%.2f$"
)。然而,上述解决方案都没有吸引我。有没有办法让Gnuplot自动为负数使用正确的印刷约定?
答案 0 :(得分:4)
从版本5.0.5开始,gnuplot有一个set minussign
命令。设置此项后,gprintf
函数(也用于设置抽搐标签)使用印刷减号(U+2212)而不是连字符:
set encoding utf8
set minussign
plot x
答案 1 :(得分:0)
不幸的是,我能找到的唯一“解决方案”是使用sprintf
绘制带有格式化x轴值的标签,而不是使用xtics set format x " "
:
set format x " "
plot 'data', \
'data' u 1:(0):(($1 >= 0 ? $1 : sprintf('{\055}%d', -$1))) notitle w labels offset graph 0, -0.55
并且你必须在PostScript字符代码中找到一个符号,而不是{\055}
接近unicode减去。
此代码假定平均数据值为0,然后检查x值$1
是否为正(test ? yes : no)