You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在gnuplot中设置两个并列且共享标题的图例?

修改gnuplot图例为并列排列的方法

要实现你想要的多行并列图例,核心是通过set key的columns参数指定列数,同时给每个数据序列添加对应标题,以下是修改后的完整代码:

set tmargin at screen 0.995;    # top and right usually close to 1
set rmargin at screen 0.995;
set bmargin at screen 0.05;
set lmargin at screen 0.05;

set xr[0:0.24]
set yr[0:0.24]
set xtics border offset   0,0.4 0,0.05,0.2
set ytics border offset   0.8,0 0,0.05,0.2
set xlabel 'RHS' offset 0,3
set ylabel 'LHS' offset 9,0

# 修改图例设置:指定4列排列,调整位置和行间距
set key at 0.22,0.1 columns 4 spacing 1.2

plot '-' w p ps 2 pt 11 lc 8 title "$\kappa=0.2$",\
     '-' w p ps 2 pt 7 lc 8 title "$\kappa=0.1$",\
     '-' w p ps 2 pt 9 lc 8 title "$\kappa=0.05$",\
     '-' w p ps 2 pt 13 lc 8 title "$\kappa=0.03$",\
     '-' w p ps 2 pt 10 lc 8 title "$\kappa=0.2$",\
     '-' w p ps 2 pt 6 lc 8 title "$\kappa=0.1$",\
     '-' w p ps 2 pt 8 lc 8 title "$\kappa=0.05$",\
     '-' w p ps 2 pt 12 lc 8 title "$\kappa=0.03$",\
     x dashtype 2 lc 8 title "y=x"
0.208555 0.204212
e
0.108604 0.107899
e
0.055720 0.055651
e
0.037514 0.037498
e
0.208555 0.230125
e
0.108604 0.115062
e
0.055720 0.057531
e
0.037514 0.038354
e

关键修改说明:

  • set key columns 4:强制图例按4列布局,8个数据序列会自动分成两行排列,你可以根据需求调整列数(比如columns 2就是4行)。
  • set key spacing 1.2:调整图例行与行之间的垂直间距,数值越大间距越宽,可按需微调。
  • 为每个plot数据序列添加title:原来的代码中除第一个序列外都没有标题,现在补充后每个符号都会在图例中显示对应标签,匹配你目标图的样式。
  • 给直线x添加title "y=x":让对角线也出现在图例中,若不需要可删除该部分。

内容的提问来源于stack exchange,提问作者Zhao Dazhuang

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 15:10:25