为什么在其他子图中使用条形图时,子图中的线图会失真

时间:2015-12-15 09:58:54

标签: matlab matlab-figure

上部子图是完全正常的ECG信号。 底部的子图是条形图。

仅在 windows matlab 2014a上,ECG信号被搞砸了。它看起来像是放大时的数据分组,看起来峰值之间的距离与条形的宽度相同。

代码

中没有什么特别的事情发生

为什么会这样。两个子图都不应该彼此了解。对我来说似乎是个错误..

figure;
subplot(211)
plot(decg.time,decg.values)

subplot(212)

h=bar(d.time,d.values)

enter image description here

1 个答案:

答案 0 :(得分:2)

如果我理解正确的话,你所遇到的问题是条形图中条纹之间的间距不均匀;为了解决这个问题,我会尝试以下方法:

  • 将'barwidth'属性设置为1:bar(d.time, d.values, 'barwidth', 1)
  • 将数字的渲染器更改为画家:figure('renderer', 'painters');

一般来说,当有大量数据点时,条形图和面积图都会变得“笨拙”,因此将数据重新采样到较低的分辨率可能会有所帮助。此外,图形引擎已在matlab 2015b中更新,因此如果上述建议都没有,那么简单更新也可能会有所帮助。