问题标签 [matlab-hg2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
724 浏览

matlab - 如何在轴的数据提示中正确显示 TeX 字符串?(MATLAB hg2)

我最近尝试在具有 hg2 的新版本 MATLAB(2015a)上运行一段旧代码(写在 hg1 上)。

我曾经能够做到以下几点(根据“ gnovice - Amro ”方法):

并且会得到带有希腊字符的格式良好的数据提示标签。

但是,在新的 hg2 系统中,findall返回 a 0x0 empty GraphicsPlaceholder array,这使得设置Interpreter无用。

我的问题是:如何在 hg2 中将绘图数据提示解释器设置为 (La)TeX?

0 投票
2 回答
930 浏览

matlab - 绘制顶轴(框)线

我有一个带有两条线和两个不同 x 轴(不同数据单元)的图,我绘制如下。

我的问题是我想把盒子的顶线也画成黑色(水平),而不是让它像现在这样“打开”。如果这条线也有 x 轴刻度,那就太好了,与底部水平轴线相同。

显然,grid on不起作用,因为它在右侧绘制 y1 轴刻度,在左侧绘制 y2 轴刻度,这是我不想要的。

另外,我认为在 Matlab 2014 中,这有效:set(ax(2),'XAxisLocation','top','XTickLabel',[]);但在 Matlab 2015a 中不再有效。

这是示例:

在此处输入图像描述

0 投票
3 回答
1378 浏览

matlab - MATLAB 2014b 及更高版本中带有画家渲染器的三角形分割补丁

MATLAB 的新图形引擎 HG2 无法使用 Painters 渲染器正确打印补丁:

生成的补丁,无论是由hist或生成的colorbar,都有三角形分割:

补丁中的三角形分裂

该问题已在此处此处的 MATLAB Central 上进行了讨论,其中建议禁用 pdf-viewer 中的“平滑线条艺术”选项应该可以解决该问题。这在某些阅读器中隐藏了问题(例如,在 Adob​​e Reader 中,但在 Apple Preview 中没有),但要求协作者和读者使用具有非默认设置的特定 pdf 查看器以正确显示图形,这几乎不是解决方案。在 Inkscape 中查看生成的文件,很明显分割存在于输出矢量图形中。在这里,我移动了一半的颜色条,证明它实际上被分成两半,而不仅仅是被 pdf-viewer 误解:

在此处输入图像描述

使用 OpenGL 渲染器(print('test.pdf','-opengl'),但输出未矢量化)不存在问题。该问题在 MATLAB 2015a 中仍然存在。

有没有办法在 MATLAB 2014b 或更高版本中导出无伪影矢量图形?

0 投票
1 回答
485 浏览

matlab - 如何以编程方式更新直方图内容和数据提示位置?(MATLAB hg2)

我正在尝试制作一个动画,其中几个数据集在一个histogram图中循环,并且数据提示跟随每一帧中的最高条,如下所示:

                          想要的结果

这是使用条形图实现所需结果的代码:

请注意,数据提示是使用makedatatip来自 FEX 的提交的修改版本创建的,根据提交页面上的评论(对于 27/06/2012 版本是这样makedatatip):

需要对代码进行一些更改:
***********CHANGE 1**********
第 122 行需要: pos = [X(index(n)) Y(索引(n)) 0];
***********更改 2**********
第 135-141 行应注释掉

并且还将更改 3: 第 84 行更改为Z = [];

由于makedatatip尝试访问绘图中不存在的输入句柄的'XData'和属性,因此它拒绝工作。所以我的问题是:'YData'histogram

如何在histogram绘图中以编程方式创建和更新数据提示(使用)以及直方图本身?

0 投票
1 回答
132 浏览

matlab - 图形句柄对象的完整结构是什么?

Mathworks 又做到了:我古老的 R2012(由我的公司提供)返回一组很好的doubles 来标识图形窗口编号以响应

现在我有一个远程 IM-ing 我,因为我给他的代码在 R2015 下失败了,因为findall现在返回了图形句柄的结构。我无法使用他的系统(没有 RDC)进行游戏,并且 mathworks 文档页面似乎没有指定图形句柄结构的元素。特别是,我想知道我是否仍然可以检索图形窗口编号。有人知道吗?

0 投票
1 回答
13489 浏览

matlab - 如何在 MATLAB 2014b 中增加散点图中图例的标记大小?

我在散点图中发现了标记大小,并且图例在 MATLAB 2014b 中有所不同。我从早期版本的 MATLAB 中搜索并找到了一些解决方案,这些解决方案不适用于最新版本。在我当前的版本中,图例中的标记尺寸非常小,几乎无法区分。有什么帮助吗?

散点图和图例中的标记大小不同。如何增加图例条目的标记大小并使其与散点图相似。

0 投票
1 回答
1819 浏览

matlab - 从计数向量绘制直方图

如果我有直方图边缘和 bin 计数的向量,是否可以使用它直接生成直方图?

例如,给定数据向量

我总是可以人工生成数据

这样numel(data) == sum(counts)我就可以使用以下方法绘制直方图histogram(data, edges)

在此处输入图像描述

但是,我想这样做而不必执行生成人工数据的中间步骤,因为这看起来相当复杂。

我知道我可以使用该bar功能,但我更喜欢使用histogram它,因为我更喜欢它的绘图方式和它提供的功能。

编辑:我使用的是 MATLAB R2015a / R2015b,尽管如果可能的话,我更愿意保持与 R2015a 的向后兼容性(我知道 R2015b 有相当大的变化histogram)。

0 投票
1 回答
236 浏览

matlab - 在现有轴内显示新图像而不删除颜色条

我正在开发一个 GUI,该 GUI 通过创建几个axes以及colorbar每个不可见来初始化(这样做是为了使轴保持其预定义Position1。存储所有轴和颜色条的句柄。

与 UI 的交互可能会导致图像被绘制在任何一个轴上。通过适当设置所有颜色条的属性,我希望在任何给定时间只显示活动Visible轴的颜色条。

我对这种方法有疑问,因为我正在使用imagesc更新我的轴,这会删除与轴关联的任何颜色条,从而使存储的句柄无效。

我的问题是:如何在不删除颜色条的情况下使用imagescimage更新与颜色条关联的轴?

以下是重现此问题的方法:

设置断点的行newplot.m内容如下:

这是(未)令人惊讶的是一种未记录的调用方式cla(使用 3 个参数),它保留了在hsave.


我假设删除颜色条是不可避免的一些想法(如果找不到“理智”的解决方案,我将继续这样做):

  1. 将 a 绑定DeleteFcn到将其数据保存到 some 的颜色栏struct。完成后创建一个新的颜色imagesc条,然后遍历 的字段struct并将所有属性分配给新的颜色条对象。
  2. 根据下面的附录,“每隔一段时间”检查所有颜色findall(hFig,'type','colorbar')条是否存在或验证每个轴是否有效。ColorbarPeerHandle如果无效,重新创建 CB。
  3. 每当不同的轴激活时删除所有颜色条并仅创建我想显示的 CB。

附录 - ColorBar/Axes 关联:

  • 可以使用以下方法获得与某个轴关联的hAx颜色条的句柄(在 hg2 中):

  • 可以使用2axes获得与颜色条对象关联的句柄:hCb

0 投票
1 回答
518 浏览

matlab - 并排(而不是重叠)误差线

我有一些数据,我正在绘制每个时间点的平均值,误差线显示标准偏差。

我可以简单地使用errorbar(x, y, err),这适用于单行。但是,如果我想在同一个图中绘制多个数据集,误差线会重叠并且看起来很糟糕:

误差线重叠,图表没有意义

我希望误差线并排排列。因此,每个回归都与之前的回归略有偏移。有没有一种我忽略的简单方法可以做到这一点?

0 投票
1 回答
1778 浏览

matlab - 如何在matlab图中使左右2个y轴的比例,限制和刻度相同

下面是我曾经在 MATLAB 图中对两个 y 轴具有相同比例的代码:

这导致:

Dev-iL 的示例输出

如何使左 y 轴的ylimytick与右 y 轴相同?或者我如何将左 y 轴的ylimand应用于ytick右 y 轴?