matlab绘制两个曲线同图
时间: 2024-10-20 15:13:07 浏览: 42
在MATLAB中,你可以使用`plot`函数或`semilogy`、`loglog`等其他绘图函数来在同一张图上绘制两条曲线。下面是一个基本的例子:
```matlab
% 假设我们有两个数据集x和y1,以及另一个数据集x和y2
x = linspace(0, 10, 100); % 创建一个线性样本点
% 第一条曲线的数据
y1 = sin(x);
% 第二条曲线的数据
y2 = cos(x);
% 绘制两条曲线
figure; % 新建一个图形窗口
hold on; % 保持当前图形状态,以便添加更多线条到同一幅图上
plot(x, y1, 'r', 'LineWidth', 2); % 红色实线,粗细为2
plot(x, y2, 'b--', 'LineWidth', 1); % 蓝色虚线,粗细为1
% 添加标题和标签
title('Two Curves on the Same Plot');
xlabel('X-axis');
ylabel('Y-axis');
% 显示网格线
grid on;
% 结束保持状态
hold off;
% 如果你想显示不同颜色的图例
legend('Sine Curve', 'Cosine Curve'); % 或者 legend('y1', 'y2')
相关问题
matlab绘制两条曲线
在MATLAB中,绘制两条曲线非常简单。你可以使用`plot`函数或更高级的`plotyy`函数来分别绘制两条独立的曲线。这里是一个基本步骤:
1. **使用`plot`函数**:
假设你有两个变量`x1`和`y1`以及`x2`和`y2`,你可以这样做:
```matlab
x1 = [0:0.1:10]; % x轴数据
y1 = sin(x1); % 第一条曲线的数据
x2 = [0:0.1:10]; % 另一条x轴数据
y2 = cos(x2); % 第二条曲线的数据
plot(x1, y1, 'r', 'LineWidth', 2); % 红色线,线宽为2,第一条曲线
hold on; % 保持当前图形以便添加更多线条
plot(x2, y2, 'b', 'LineWidth', 2); % 蓝色线,线宽为2,第二条曲线
legend('First Curve', 'Second Curve'); % 添加图例
xlabel('X-axis'); % X轴标签
ylabel('Y-axis'); % Y轴标签
title('Two Curves in MATLAB'); % 图形标题
hold off; % 关闭hold模式
```
2. **使用`plotyy`函数**(如果你需要在同一张图上显示两个不同的x轴):
```matlab
plotyy(x1, y1, x2, y2); % 在同一坐标系中绘制两组数据
set(gca, 'PlotBoxAspectRatio', [1 1 1]); % 设置比例,确保两个x轴等高
legend('First Curve', 'Second Curve');
xlabel({'X-axis for Curve 1', 'X-axis for Curve 2'});
ylabel({'Y-axis for Curve 1', 'Y-axis for Curve 2'});
title('Two Curves with Separate X-Axes');
```
记得在每次绘图后检查并可能调整图形的范围、标签和标题,以保证信息的清晰易读。
MATLAB在同一个坐标图中绘制两个曲线
在MATLAB中,如果你想在同一张坐标图上绘制两个不同的曲线,你可以使用`plot`函数。以下是基本步骤:
1. 首先,确保你已经有了两个你想展示的数据集合,分别对应x轴和对应的y值。例如,假设你有两个向量`x1`和`y1`代表第一条曲线,以及`x2`和`y2`代表第二条曲线。
```matlab
x1 = [0:0.1:10];
y1 = sin(x1);
x2 = [0:0.5:20];
y2 = cos(x2);
```
2. 然后,可以使用`plot`函数将这两组数据绘制在一起。给每个数据集传递不同的颜色、线型等属性,以便区分它们。例如:
```matlab
% 绘制两条线
plot(x1, y1, 'r', 'LineWidth', 2); % 第一条线,红色,粗线条
hold on; % 保持当前图形打开状态,便于添加更多线
plot(x2, y2, 'b', '--', 'LineWidth', 1); % 第二条线,蓝色虚线,细线条
```
在这里,`hold on`命令让后续的`plot`命令在现有的图上添加新的元素,而不是创建新的图表。
3. 最后,记得关闭`hold`模式,显示完整的图像,并设置合适的标题和标签:
```matlab
hold off;
title('Two Curves on the Same Plot');
xlabel('X-axis');
ylabel('Y-axis');
legend('Curve 1', 'Curve 2'); % 显示图例说明哪条线是什么
```
现在,你就成功地在一个坐标图上展示了两条曲线了。
阅读全文