Matlab 图像合并:在同一窗口显示原图和绘制图形
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]); % 设置第二个图像位置
代码解析:
-
subplot(m,n,p)函数: -m:将图像窗口分成m行。 -n:将图像窗口分成n列。 -p:当前操作的图像位于第p个位置 (从左到右,从上到下)。 -
imshow(img)函数: 显示图像img。 -
plot(x, y)函数: 绘制以x为横坐标,y为纵坐标的图形。 -
set(gcf, 'Position', [x y width height])函数: - 设置当前图像窗口的位置和大小。 -x,y:窗口左下角的坐标。 -width,height:窗口的宽度和高度。 -
set(gca, 'Position', [left bottom width height])函数: - 设置当前坐标轴的位置和大小 (相对于图像窗口)。 -left,bottom:坐标轴左下角的坐标 (比例值,0 到 1)。 -width,height:坐标轴的宽度和高度 (比例值)。
通过调整 subplot 函数的参数以及 set 函数设置的位置和大小,可以将多个图像按照需求排列在同一个窗口中,方便进行比较和展示。
原文地址: https://www.cveoy.top/t/topic/f1bL 著作权归作者所有。请勿转载和采集!