Matlab 图像合并:在同一窗口显示原图和绘制图形

在Matlab中,我们经常需要将原始图像和绘制的图形放在一起进行比较或展示。这时,可以使用subplot函数将多个图像排列在同一个窗口中。

**示例代码:**matlab% 读取原图像img = imread('lena.jpg');

% 将窗口分为1行2列,并在第一个位置显示原图像subplot(1,2,1);imshow(img);title('原图像');

% 在第二个位置绘制图形x = linspace(0, 2*pi, 100);y = sin(x);subplot(1,2,2);plot(x, y);title('绘制图像');

% 调整图像大小和位置set(gcf, 'Position', [100 100 800 400]); % 设置图像大小和位置set(gca, 'Position', [0.05 0.1 0.4 0.8]); % 设置第一个图像位置set(gca, 'Position', [0.55 0.1 0.4 0.8]); % 设置第二个图像位置

代码解析:

  1. subplot(m,n,p) 函数: - m:将图像窗口分成 m 行。 - n:将图像窗口分成 n 列。 - p:当前操作的图像位于第 p 个位置 (从左到右,从上到下)。

  2. imshow(img) 函数: 显示图像 img

  3. plot(x, y) 函数: 绘制以 x 为横坐标,y 为纵坐标的图形。

  4. set(gcf, 'Position', [x y width height]) 函数: - 设置当前图像窗口的位置和大小。 - x, y:窗口左下角的坐标。 - width, height:窗口的宽度和高度。

  5. set(gca, 'Position', [left bottom width height]) 函数: - 设置当前坐标轴的位置和大小 (相对于图像窗口)。 - left, bottom:坐标轴左下角的坐标 (比例值,0 到 1)。 - width, height:坐标轴的宽度和高度 (比例值)。

通过调整 subplot 函数的参数以及 set 函数设置的位置和大小,可以将多个图像按照需求排列在同一个窗口中,方便进行比较和展示。

Matlab 图像合并:在同一窗口显示原图和绘制图形

原文地址: https://www.cveoy.top/t/topic/f1bL 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录