使用垂直分隔符对两个图像进行子图绘制

时间:2019-02-10 13:52:09

标签: image matlab line matlab-figure subplot

我正在尝试创建一个图形,其左侧为图像(原始图像),右侧为图像(扭曲图像),并用垂直线将它们分开,如下所示:

enter image description here

我已经尝试过通过创建没有刻度和标签的轴来进行此操作。然后从下到上画一条线,并分别应用hold onsubplot这两个图像。

我的代码:

origImage = imread('F-original.png');
tform = affine2d([1 0 0; .5 1 0; 0 0 1]);
warpedImage = imwarp(origImage, tform, 'interp', 'bilinear');

axes('Position', [0 0 1 1], 'XTick', NaN, 'YTick', NaN);
line([1/2 1/2], [0 1], 'Color', 'k')
axes(gca)
hold on

subplot(1, 2, 1)
imshow(origImage)

subplot(1, 2, 2)
imshow(warpedImage)

但是实际发生的是:该线闪烁了一秒钟,然后消失了,所有可见的只是子图。

如何进行这项工作?

1 个答案:

答案 0 :(得分:4)

要获得该结果,您应该使用annotation,它是图级别上的图形对象(即,不限于特定的轴,因此不需要{{1 }}等。

这是一个例子:

hold on

结果:

enter image description here