用matlab建立两个图窗分别绘图
时间: 2024-03-13 07:17:07 浏览: 64
可以通过使用MATLAB中的`figure`和`subplot`函数来实现在两个图窗中绘图。以下是一个简单的示例:
```matlab
% 创建一个包含两个子图的图窗
figure;
% 在第一个子图中绘制正弦函数
subplot(2,1,1); % 2行1列,第1个子图
x = linspace(0, 2*pi);
y = sin(x);
plot(x, y);
title('Sine Function');
% 在第二个子图中绘制余弦函数
subplot(2,1,2); % 2行1列,第2个子图
y = cos(x);
plot(x, y);
title('Cosine Function');
```
上面的代码将创建一个包含两个子图的图窗,第一个子图绘制正弦函数,第二个子图绘制余弦函数。可以通过调整`subplot`函数的参数来设置子图的行数、列数和当前子图的索引。
相关问题
matlab 绘图
### MATLAB绘图教程
#### 创建简单二维线图
要创建简单的二维线图,可以使用`plot`函数。此函数接受向量或矩阵作为输入参数并绘制相应的线条图表。
```matlab
% 定义数据点
x = linspace(0, 2*pi, 100);
y = sin(x);
% 使用 plot 函数绘制正弦波形
figure; % 打开新窗口用于绘图
plot(x, y); % 绘制 (x,y) 数据对形成的曲线
title('Sine Wave'); % 设置标题
xlabel('Angle (\theta)'); % X轴标签
ylabel('sin(\theta)'); % Y轴标签
grid on; % 显示网格线
```
#### 自定义图形样式
可以通过指定额外的颜色、标记符以及线型来自定义所生成图像的外观[^1]。
```matlab
% 更改颜色为红色 ('r'), 添加星号标记 ('*') 和虚线风格('--')
plot(x, cos(x), 'r*--');
legend('Cosine Function', 'Location', 'Best'); % 插入图例说明
```
#### 处理多个子图布局
当需要在同一张图片内显示多幅不同类型的图表时,可借助`subplot`命令实现分格排列的效果。
```matlab
t = linspace(-pi, pi, 80);
s = tan(sin(t)) - sin(tan(t));
% 建立一个由两行一列组成的区域,在第一个位置上画出 s-t 曲线
subplot(2, 1, 1);
plot(t, s);
title('Plot of the function');
% 切换至第二个位置继续作图
subplot(2, 1, 2);
stem(t, abs(s)); % stem 可用来制作离散序列图
title('|f| at sample points');
```
#### 控制坐标范围与刻度间隔
为了更精确地控制X/Y轴上的数值分布情况,应该学会调整它们各自的界限和步长设置。
```matlab
axis([-pi/2 pi/2 -4 4]); % 设定当前坐标系的具体边界值
set(gca,'XTick',-pi/2:pi/4:pi/2,... % 修改横坐标的刻度划分方式
'YTick',-4:1:4,...
'FontSize',12); % 改变字体大小
```
通过上述几个例子可以看出,MATLAB 提供了一系列强大而易用的功能来满足各种可视化需求。无论是基本的数据表示还是复杂的研究级应用,都能找到合适的方法加以呈现。
MATLAB 两个函数在同一个figure中绘图
### 使用 `subplot` 函数在 MATLAB 中绘制两个函数
为了在同一 figure 窗口中展示两个不同函数的图像,可以采用 `subplot` 函数来实现这一目标。该方法能够在单一图形界面里构建出由多张子图构成的布局结构[^1]。
```matlab
% 定义第一个函数及其绘图范围
x1 = linspace(0, 2*pi, 100);
y1 = sin(x1);
% 定义第二个函数及其绘图范围
x2 = linspace(-pi, pi, 100);
y2 = cos(x2);
% 创建一个新的图形窗口
figure;
% 利用 subplot 建立两行一列的第一个位置上的子图
subplot(2, 1, 1); % 参数表示:m,n,p (m 行 n 列中的第 p 个位置)
plot(x1, y1, '-r');
title('Sine Function');
xlabel('Angle (\theta)');
ylabel('sin(\theta)');
% 在同一 figure 下建立第二行的位置上添加另一个子图
subplot(2, 1, 2);
plot(x2, y2, '--b');
title('Cosine Function');
xlabel('Angle (\phi)');
ylabel('cos(\phi)');
```
上述代码展示了如何定义两个不同的数学表达式以及它们各自的变量取值区间;接着调用了 `subplot()` 来指定新创建的 plot 应位于当前 figure 的哪个区域,并设置了相应的坐标轴标签和标题以增强图表可读性。
阅读全文
相关推荐















