我正在使用这个 FEX 条目来绘制在 X 轴上绘制的变量的水平阴影误差条。该变量绘制在不同的区域/区域中,因此,3 个区域有 3 个阴影误差条。我想将误差线(阴影区域)的图例以及任何区域的平均值(实线)组合成一个单一的图例,由与颜色相同的实线(或补丁内的实线)表示区。
我的代码用于绘图的方式:我绘图方式的综合示例如下所示
fh = figure();
axesh = axes('Parent', fh);
nZones = 4;
nPts = 10;
X = nan*ones(nPts, nZones);
Y = nan*ones(nPts, nZones);
XError = nan*ones(10, 4);
clr = {'r', 'b', 'g', 'm', 'y', 'c'};
for iZone = 1:nZones
X(:, iZone) = randi(10, nPts, 1);
Y(:, iZone) = randi(10, nPts, 1);
XError(:, iZone) = rand(nPts, 1);
% Append Legend Entries/Tags
if iZone == 1
TagAx = {['Zone # ', num2str(iZone)]};
else
TagAx = [TagAx, {['Zone # ', num2str(iZone)]}];
end
hold(axesh, 'on')
[hLine, hPatch] = boundedline(X(:, iZone), Y(:, iZone), XError(:, iZone),...
strcat('-', clr{iZone}), axesh, 'transparency', 0.15,...
'orientation', 'horiz');
legend(TagAx);
xlabel(axesh, 'X', 'Fontweight', 'Bold');
ylabel(axesh, 'Y', 'Fontweight', 'Bold');
title(axesh, 'Error bars in X', 'Fontweight', 'Bold');
end
传奇人物目前的表现方式:
我尝试了什么:正如有人在该文件的 FEX 页面的评论部分中建议的那样,在boundedline code 的第 314 行之后添加以下代码。
set(get(get(hp(iln),'Annotation'),'LegendInformation'),'IconDisplayStyle','off');
但是,这样做我得到这个错误:
名称“注释”不是“根”类实例的可访问属性。
编辑:前两个答案建议访问由函数作为输出返回的补丁和行的图例句柄boundedline
。我试过了,但问题仍然没有解决,因为图例条目仍然与区域不一致。