Matlab:在图像图上绘制一条线

时间:2020-08-19 07:26:46

标签: matlab plot

我想在Matlab中在图像图的顶部绘制线条图

首先我绘制图像数据

figure(1); clf;
imagesc(t); colorbar
hold on;
axis tight

然后是线图

line(ysum,y,'Color','red')
hold off;

但是,线条图会删除图像并将背景设置为白色。 如何在图像上方绘制图像?

1 个答案:

答案 0 :(得分:1)

您的代码没有错,但是由于您尚未定义t, y, ysum,因此它不是可重复的最小示例。当您调用imagesc(t)时,行和列将是t的索引。换句话说,它与调用imagesc([1, size(t,2)], [1, size(t,1)], t)相同。如果t很小(例如10 x 10),但是y,ysum的元素很大(例如> 1000),则10 x 10的图像仍会存在,但会被挤压到角落。几乎不可见。

因此,您需要确保y, ysum, t的范围对齐。快速解决方法:

xidx = [min(ysum), max(ysum)];
yidx = [min(y), max(y)];
imagesc(xidx, yidx, t);
相关问题