当我转动图例 box off 时,图例标题消失。我究竟做错了什么?

hL = legend ((h([1 2])), {'North', 'South'});
set(hL,'box','off')
newPosition = [0.83 0.8 0.1 0.1];
newUnits = 'normalized';
set(hL,'Position', newPosition,'Units', newUnits);
v = get(hL,'title');
set(v,'string','Region','fontsize',9);

最佳答案

好的,现在我明白你的问题了。

我编了一些数据:

n = 8;
x = [1:n];
y(:,1) = rand(1,n);
y(:,2) = rand(1,n);

然后使用您的绘图命令:
h = bar(x,y,'stacked');
hL = legend ((h([1 2])), {'North', 'South'});

但是不要关闭盒子,只需将边缘颜色设置为白色:
set(hL, 'EdgeColor', 'w')

然后使用:
newPosition = [0.75 0.75 0.1 0.1];
newUnits = 'normalized';
set(hL,'Position', newPosition,'Units', newUnits);
v = get(hL,'title');
set(v,'string','Region','fontsize',9);

我得到:

所以现在“区域”标题不会消失。

请注意,我必须更改图例的坐标以将其保留在图中,但当然您可以将其放置在您想要的位置。

关于matlab - 关闭图例框会使图例标题在 Matlab 中消失,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20365324/

10-11 05:32