Matlab 绘图:多个图形的组合

Matlab 绘图:多个图形的组合

在 Matlab 中,我们常常需要在同一张图中展示多个图形。这时,我们可以使用图形数组(graphics array)来实现,将多个图形组合在一起,方便我们进行比较和分析。

下面,我们就来介绍一下如何使用图形数组来绘制多个图形。

  1. 创建图形数组

我们可以使用 subplot 函数来创建一个图形数组。subplot 函数的参数控制着图形数组的行数、列数、以及当前绘制的图形在图形数组中的位置。例如,如果我们想创建一个 2x3 的图形数组,并将当前绘制的图形放在第 4 个位置,可以使用以下代码:

subplot(2, 3, 4);

当我们调用 subplot 函数时,Matlab 会自动将当前绘制的图形切换为指定位置的子图,我们可以在该子图上进行绘制操作。

  1. 绘制图形

在创建好图形数组后,我们就可以在各个子图上进行绘制操作了。例如,我们可以在第一个子图上绘制一个正弦曲线,代码如下:

x = 0:0.1:2*pi;
y = sin(x);
subplot(2, 3, 1);
plot(x, y);

我们也可以在不同的子图上绘制不同的图形,例如,在第二个子图上绘制一个余弦曲线:

x = 0:0.1:2*pi;
y = cos(x);
subplot(2, 3, 2);
plot(x, y);
  1. 修改图形属性

我们还可以修改图形数组中各个子图的属性,例如,调整坐标轴范围、添加标题和标签等。下面是一个例子,我们在第三个子图上绘制一个散点图,并添加标题和坐标轴标签:

x = randn(100, 1);
y = randn(100, 1);
subplot(2, 3, 3);
scatter(x, y);
title('Scatter Plot');
xlabel('X Axis');
ylabel('Y Axis');
  1. 展示图形

在完成图形数组的绘制后,我们可以使用 figure 函数来展示图形。默认情况下,Matlab 会按照顺序依次展示图形数组中各个子图,我们也可以使用 subplot 函数来指定展示哪些子图。例如,以下代码展示了图形数组中的第 1、3、5 个子图:

subplot(1, 3, 1);
imshow('image1.jpg');
subplot(1, 3, 2);
imshow('image2.jpg');
subplot(1, 3, 3);
imshow('image3.jpg');

完整代码如下:

x = 0:0.1:2*pi;
y = sin(x);
subplot(2, 3, 1);
plot(x, y);

x = 0:0.1:2*pi;
y = cos(x);
subplot(2, 3, 2);
plot(x, y);

x = randn(100, 1);
y = randn(100, 1);
subplot(2, 3, 3);
scatter(x, y);
title('Scatter Plot');
xlabel('X Axis');
ylabel('Y Axis');

subplot(1, 3, 1);
imshow('image1.jpg');
subplot(1, 3, 2);
imshow('image2.jpg');
subplot(1, 3, 3);
imshow('image3.jpg');

通过以上的代码操作,我们可以发现图形数组能够方便地将多个图形组合在一起,在进行比较和分析时非常有用。

你可能感兴趣的:(matlab,算法,开发语言)