以八度为单位更改图例的位置

时间:2017-11-28 17:10:26

标签: octave legend subplot

我希望在多个子图的下方或右侧显示图例,同时保持子图的纵横比。尝试this answer的方法,我写了下面的代码:

x = [0:0.1:10];

figure();
for i=1:4
  subplot(3,2,i);
  plot(x, x);
endfor;

hSub = subplot(3,2,5:6); 
plot(0);
hLegend = legend('1');
set(hLegend, 'position', get(hSub, 'position'));

产生:output

图例应该替换完整的图5.我无法在octave documentation找到属性position,所以它显然无效。

有没有办法改变传说位置或其他方法来打印子图旁边的图例?

修改

  • Octave版本:4.0.3 GUI
  • 操作系统:Opensuse 42.2
  • graphics_toolkit:使用gnuplotfltkqt
  • 进行了测试

1 个答案:

答案 0 :(得分:2)

我想你想要像

这样的东西
x = [0:0.1:10];
figure();
for i=1:4
  subplot(3,2,i);
  plot(x, x);
endfor;

l = legend ("foobar")
hsub = subplot(3,2,5:6);
set (l, "position", get (hsub, "position"))
delete (hsub)

给出了

Subplot legend