Gnuplot轴标签指数格式设置:如何仅在轴侧显示10^{%L}而非每个数值旁
Gnuplot轴指数格式单独显示设置方案
要让10^{%L}仅在坐标轴的上方/侧边显示一次,而非每个刻度重复出现,只需将刻度格式简化为仅显示指数数值,再单独添加指数标记标签即可,具体步骤如下:
1. 调整刻度格式
将原有的轴格式设置修改为仅显示指数部分(移除重复的10^{}相关内容):
set format x "%L" set format y "%L"
如果使用的是对数坐标轴,需先开启对数刻度:
set logscale x set logscale y
2. 添加单独的指数标记标签
用set label将10^{}标记固定在坐标轴的合适位置(基于绘图区域坐标定位,不受数据范围变动影响):
# X轴:放在绘图区域右侧、X轴上方(超出绘图区域一点避免和刻度重叠) set label "{/Symbol \327}10^{}" at graph 1.05, 0.0 center # Y轴:放在绘图区域左侧、Y轴上方,旋转90度适配竖轴方向 set label "{/Symbol \327}10^{}" at graph 0.0, 1.05 center rotate by 90 # 可选:调整标签字体大小,适配绘图尺寸 set label font ",10"
完整示例代码
set logscale x y set format x "%L" set format y "%L" set label "{/Symbol \327}10^{}" at graph 1.05, 0.0 center set label "{/Symbol \327}10^{}" at graph 0.0, 1.05 center rotate by 90 set label font ",10" plot x**2 title "y = x²"
原理说明:原代码中{/Symbol \327}10^{%L}会随每个刻度重复渲染,现在将指数数字与10^{}标记拆分,刻度仅显示指数值,10^{}通过独立标签固定在轴的侧边/上方,仅显示一次。
内容的提问来源于stack exchange,提问作者Elena Greg
相关产品推荐
相关产品推荐

