结合阴影误差和实线平均值的图例

2024-04-24

我在用此 FEX 条目 http://www.mathworks.com/matlabcentral/fileexchange/27485-boundedline-line-plots-with-shaded-errorconfidence-intervals绘制 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

传奇人物目前的表现方式:

我已经尝试过:正如有人在评论区 http://www.mathworks.com/matlabcentral/fileexchange/27485-boundedline-line-plots-with-shaded-errorconfidence-intervals该文件的 FEX 页面的第 314 行后添加以下代码有界线代码 http://www.mathworks.com/matlabcentral/fileexchange/27485-boundedline-line-plots-with-shaded-errorconfidence-intervals/content/boundedline.m.

set(get(get(hp(iln),'Annotation'),'LegendInformation'),'IconDisplayStyle','off');

但是,这样做时我收到此错误:

名称“Annotation”不是以下实例的可访问属性 类“根”。

EDIT:前两个答案建议访问补丁和行的图例句柄,这些句柄由函数作为输出返回boundedline。我尝试过,但问题仍然没有解决,因为图例条目仍然与区域不一致。


有一个直接的通用方法控制传奇 http://www.mathworks.co.uk/help/matlab/creating_plots/controlling-legends.html。您可以简单地通过获取行条目来选择不显示它们'Annotation'属性并设置'IconDisplayStyle' to 'off'.

另外,为了使用查兹吉尔伯特 https://stackoverflow.com/users/788473/chadsgilbert的解决方案,您需要从每个循环迭代中收集每个补丁句柄。我对您的代码进行了一些重构,使其适用于这两种解决方案。

% Refactoring you example (can be fully vectorized)
figure
axesh  = axes('next','add'); % equivalent to hold on
nZones = 4;
nPts   = 10;
clr    = {'r', 'b', 'g', 'm', 'y', 'c'};
X      = randi(10, nPts, nZones);
Y      = randi(10, nPts, nZones);
XError = rand(nPts, nZones);

% Preallocate handles 
hl = zeros(nZones,1);
hp = zeros(nZones,1);
% LOOP
for ii = 1:nZones
    [hl(ii), hp(ii)] = boundedline(X(:, ii), Y(:, ii), XError(:, ii),...
        ['-', clr{ii}], 'transparency', 0.15, 'orientation', 'horiz');
end

最简单的方法如图所示查兹吉尔伯特 https://stackoverflow.com/users/788473/chadsgilbert:

% Create legend entries as a nZones x 8 char array of the format 'Zone #01',...
TagAx  = reshape(sprintf('Zone #%02d',1:nZones),8,nZones)'
legend(hp,TagAx)

...或者对于一般更复杂的操作,设置图形对象的图例显示属性:

% Do not display lines in the legend
hAnn   = cell2mat(get(hl,'Annotation'));
hLegEn = cell2mat(get(hAnn,'LegendInformation'));
set(hLegEn,'IconDisplayStyle','off')

% Add legend
legend(TagAx);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

结合阴影误差和实线平均值的图例 的相关文章

  • matlab中的分箱

    我一直无法在 matlab 或 Octave 中找到函数来完成我想要的操作 我有一个两列的矩阵 m x 和 y 值 我知道我可以通过执行 m 1 或 m 2 来提取列 我想将其分成 可能 大小相等的较小矩阵 并绘制这些矩阵的平均值 换句话说
  • 在不同长度的数组中查找相同的日期时间

    考虑以下儒略日期数组 Jday1 datenum 2011 01 01 00 00 yyyy mm dd HH MM 60 60 24 datenum 2011 12 31 23 00 yyyy mm dd HH MM Jday2 date
  • 结合阴影误差和实线平均值的图例

    我在用此 FEX 条目 http www mathworks com matlabcentral fileexchange 27485 boundedline line plots with shaded errorconfidence i
  • Matlab:不正确的索引矩阵参考(或智胜matlab)

    我希望能够写jasmine http pivotal github io jasmine 类似于 Matlab 中的测试 所以像 expect myfibonacci 0 toBe 0 expect myfibonacci 5 toBe 1
  • MATLAB:解包函数

    我正在与 Mathworks 的某人讨论 unwrap http www mathworks com access helpdesk help techdoc ref unwrap html函数中对于 以外的跳跃容差有一个 bug 并且希望
  • 我的傅立叶逆变换中的尖峰

    我正在尝试在 MATLAB 中比较两个数据集 为此 我需要通过傅里叶变换数据来过滤数据集 对其进行过滤 然后对其进行逆傅里叶变换 然而 当我对数据进行逆傅里叶变换时 我在红色数据集的两端都出现了一个尖峰 图片显示了第一个尖峰 它在开始时应该
  • 添加覆盖 twinx 轴线条的图例

    我有这个Python代码 它与轴成对ax并在两个轴上绘制一些函数 我将图例绘制在ax1 问题是图例没有覆盖曲线ax2 有可能自动定位传说中的ax通过覆盖线ax2 请注意 在fig legend选项loc best 不可用 我需要在绘图区域内
  • 我的 matlab 图中需要不同的颜色

    这是我的情节代码 问题是我的图中的两条线具有相同的颜色 我需要为图中的每条线 总共 4 条线 分配一个特殊的颜色 for i 1 nFolderContents data hdrload folderContents i if size f
  • 正确重载 stringbuf 以替换 MATLAB mex 文件中的 cout

    MathWorks 目前不允许您使用cout当 MATLAB 桌面打开时 从 mex 文件中读取 因为它们已重定向 stdout 他们当前的解决方法是提供一个函数 mexPrintf 他们要求你改用 http www mathworks c
  • 在Matlab中将矩阵中的元素i,j设置为i*j

    我想生成一个矩阵 其中 i j 元素等于 i j 其中 i j e g 0 2 3 2 0 6 3 6 0 到目前为止 我已经发现我可以使用这个索引矩阵访问非对角线元素 idx 1 eye 3 但我还没有弄清楚如何将矩阵单元的索引合并到计算
  • MATLAB 图像锐化 - 使用(1-高斯低通滤波器)的高斯高通滤波器

    我试图通过设计高斯高通滤波器来锐化图像 我想利用高通滤波器相当于单位矩阵减去低通滤波器的事实来做到这一点 所以我执行了以下操作 image imread Question3 Data Cats jpg read image H 1 fspe
  • 如何在 MATLAB 中创建带有分级标记颜色的散点图?

    我想在 MATLAB 中绘制一个简单的散点图 标记颜色从光谱的一端到另一端各不相同 例如红色 橙色 黄色 蓝色 紫色 我的数据比较了一段时间内河流的水量和水质 3 个简单的列 时间 水量 质量 我想绘制数量与质量的 x y 散点图 但颜色随
  • 数组中 2 个百分位之间的平均元素

    我有 2 个长度为 200 的向量 例如 A 和 B 然后我使用以下方法找到数组 A 的每第二个百分位数 A1 prctile A 1 2 100 1 这样A1是一个长度为50的数组 现在我想找到A1中每两个元素内的A元素的平均值 即A的第
  • 使用 libsvm 交叉验证后重新训练

    我知道交叉验证用于选择好的参数 找到它们后 我需要在不使用 v 选项的情况下重新训练整个数据 但我面临的问题是 在使用 v 选项训练后 我得到了交叉验证精度 例如 85 没有模型 我看不到 C 和 gamma 的值 在这种情况下我该如何重新
  • 将 Android 应用程序与服务器上的 Matlab 应用程序连接

    我正在 Android 上开发一个应用程序 它将获取图像输入 并将该输入传递到安装 MATLAB 应用程序的服务器 MATLAB 应用程序将计算结果并将其返回到该 Android 应用程序 我想知道我可以使用哪个服务器 如何将 MATLAB
  • 将输出从符号数学 (sym) 转换为浮点型

    我的问题类似于这个问题 https stackoverflow com questions 11114101 how to convert mupad symbol i sqrt 1 to i in matlab 11114959 1111
  • 如何将Matlab代码库与Android集成?

    我有一个算法和 MATLAB 中的一些其他代码 我想在我的 Android 应用程序中使用它 我怎样才能做到这一点 我可以从 MATLAB 制作 jar 文件以便与 Android 一起使用吗 我必须做点别的事吗 如果您还有其他产品 适用于
  • MATLAB 中的抗锯齿线和标记

    您好 我在 MATLAB 中有一张图像 我希望这条线是平滑的 看看从 0 4 到 0 8 的线 这太可怕了 当在图中使用 LineSmoothing on 运算符时 我得到了这个 我在线条上做得很好 但它也使标记变得平滑 而且它们太可怕了
  • 如何建立数据流挖掘的滑动窗口模型?

    我们遇到的情况是 流 来自传感器的数据或服务器上的点击流数据 采用滑动窗口算法 我们必须将最后 例如 500 个数据样本存储在内存中 然后 这些样本用于创建直方图 聚合并捕获有关输入数据流中异常的信息 请告诉我如何制作这样的滑动窗 如果您询
  • Microsoft Visual C++ 2008 和 R2007b 的 Mex 类型

    我想对 vs2008 和 matlab2007b 使用 mex 类型 我尝试了下面的代码 include

随机推荐

  • 创建透明渐变并将其用作 SpriteKit 中的 alpha 遮罩

    我正在尝试制作渐变并将其用作 alpha 蒙版 现在 我能够制作与此类似的图像 从黑色到透明 这是我用来实现这一切的代码 private func createImage width CGFloat height CGFloat gt CG
  • cin.get() 是非阻塞的

    我有与链接问题中提到的相同的问题 控制台窗口 在 VS 2010 中 在运行程序后立即消失 我使用 cin get 在主函数的末尾 但问题仍然存在 对可能的原因有什么想法吗 您可以查看main中的代码 int main const int
  • 如何动态地将新选项卡添加到红色选项卡面板中

    假设您有一个像这样的选项卡面板 editor layout below t tab panel 350x350 tab 1 below b button 75x25 Interpret on click do a text a area 3
  • 基于一个键将数据从 df 复制到多列中的另一个 df

    我有两个数据框 df1 和 df2 每个数据帧的唯一标识符是 ID 和 Prop Number 我需要将 df1 中的 Num1 2 和 3 列复制到 df2 1 Num 中的相应列 但我不确定如何对多个列进行合并 我想将 df2 保留为
  • 绝对中心流体div

    再会 我知道如果你想将 div 绝对居中 你可以这样做 div div blahblah div div CSS parent width 500px height 500px position absolute or relative t
  • Cordova DeviceReady 未触发

    这几天我一直在为这个问题苦苦思索 在尝试创建新的 FileTransfer 对象时出现许多 对象未定义 错误后 看起来问题更加基本 不知何故 DeviceReady 事件没有触发 Stack Overflow 在这个问题上有很多点击 但其中
  • 使用 nHibernate 序列化 DetachedCriteria

    我正在尝试序列化 DetachedCriteria 以便可以将其保存在数据库中并在以后重用相同的条件 当我运行下面的代码时 我得到 NHibernate Criterion DetachedCriteria 无法序列化 因为它没有无参数构造
  • Wagtail / Hallo.js - 添加插件但修改的内容未保存

    我正在 Wagtail 1 3 1 Django 1 7 11 上运行 我已经激活了 Hallohtml 和 Hallojustify 插件 它们出现在工具栏中 没有图标 但有按钮 可以使用按钮 并且可以在文本区域中看到修改 我的意思是 例
  • 如何使以下 readAsDataURL 返回多个 readAsDataURL?

    此函数读取从输入字段获取的文件并返回其 dataUrls readAsDataURL target target gt
  • 无法使用 Spring 的 WebServiceTemplate 将 Http 标头添加到消息中

    我有一个相当简单的情况 我尝试将 HTTP 标头 不是 SOAP 标头 添加到我使用 Spring 发出的请求中WebServiceTemplate 我定义了一个ClientInterceptor我在哪里做 Override public
  • Numpy 中如何获得向量的大小?

    为了与 只有一种明显的方法可以做到这一点 保持一致 如何在 Numpy 中获取向量 一维数组 的大小 def mag x return math sqrt sum i 2 for i in x 上面的方法有效 但是我无法相信我必须自己指定这
  • Android JNI异常处理

    我需要在 JNI 代码中实现异常处理 我不擅长 jni 找不到任何好的例子 因此 请提供完整的示例 这就是我正在做的 jint JNI OnLoad JavaVM vm void reserved jint result 1 g JavaV
  • 为什么 nhibernate 3.3 不允许 ICollection 上的私有 setter?

    我从 nhibernate 3 2 升级到 nhibernate 3 3 并且在我的域类中定义了很多虚拟成员 如下所示 public virtual ICollection
  • Django Channels - 无法在断开连接时发送消息

    我希望能够在用户断开连接时向房间组发送消息 以便更新玩家列表 似乎一旦断开连接就不可能了 这在某种程度上是有意义的 但是在断开用户连接之前我如何能够向通道发送消息 我有以下代码 async def disconnect self close
  • 不太无用的“yes”bash 命令:如何在每个循环中确认命令

    我编写了一个循环来解压缩目录中的所有 zip 文件 for f in zip do unzip f done 但是 我必须在每一步确认覆盖 replace file123 txt y es n o A ll N one r ename A
  • Functions Bot 是否不再是 Azure 中推荐的机器人服务?

    我有一个无服务器系统 我希望向其中添加 Bot Framework 主要是为了提供与不同聊天渠道的集成 我正在考虑尝试在 Bot Service 中创建一个 Functions Bot 但是当我开始创建一个时 我收到以下信息消息 Funct
  • adArray 的 VBScript / ADODB 语法问题?

    我希望有人能给我一些关于我的 vb 脚本的新视角 该脚本的主要目的是使用一些参数执行存储过程 我得到的错误是 预计声明结束 我没有做过太多的 VB 脚本编写 但从目前为止我发现的情况来看 这个错误是由于某种语法问题造成的 我已经查看这个脚本
  • 如何在asp.net mvc中从https跳出到http模式

    我通过在控制器操作上添加属性 RequireSSL 使我的登录页面启用了 Https 并且工作正常 但登录成功后仍处于https环境 但页面为非https页面 谁能给我解决如何从 https 模式退出到 http 模式的问题吗 在这方面的任
  • Django django-location-field 缺少 API 密钥

    我正在使用https github com caioariede django location field https github com caioariede django location field使用 Django 构建位置视图
  • 结合阴影误差和实线平均值的图例

    我在用此 FEX 条目 http www mathworks com matlabcentral fileexchange 27485 boundedline line plots with shaded errorconfidence i