MATLAB 画图


MATLAB绘制函数图像

要绘制一个函数的图形,需要采取以下步骤:

  • 通过指定要绘制函数的变量x的值范围来定义x
  • 定义函数,比如y = f(x)
  • 调用plot命令:plot(x, y)

实例1

下面的示例将演示这个概念。让我们画出x从0到100的值范围的简单函数y = x,增量为5 :


x = [0:5:100];
y = x;
plot(x, y)

结果:

y = x

实例2

再举一个例子来画函数y = x^2。在本例中,我们将绘制具有相同功能的两个图形,但在第二次中,我们将减少增量的值。请注意,随着增量的减小,图形会变得更平滑。

创建脚本文件并键入以下代码:


x = [-100:20:100];
y = x.^2;
plot(x, y)
y = x.^2可以清晰看到突兀的转折点
可以清晰看到突兀的转折点

稍微更改代码文件,将增量减少到5 :


x = [-100:5:100];
y = x.^2;
plot(x, y)
发现曲线变光滑了
发现曲线变光滑了

在图形上添加标题、标签、网格线和缩放

命令作用
xlabel,ylabel在x轴/y轴上添加标签
title给图像添加标题
grid on在图中增加网格线
axis equal生成具有相同比例因子的元素和两个轴上的空间。
 axis square 生成一个正方形图

实例

创建脚本文件并键入以下代码


x = [0:0.01:10];
y = sin(x);
plot(x, y), xlabel('x'), ylabel('Sin(x)'), title('Sin(x) Graph'),
grid on, axis equal

结果:

Sin(x) Graph

在同一图形上绘制多个函数

可以在同一个图形上绘制多个图形。参考下面实例:


x = [0 : 0.01: 10];
y = sin(x);
g = cos(x);
plot(x, y, x, g, '.-'), legend('Sin(x)', 'Cos(x)')

结果:

在同一个图形上绘制多个图形

设置图形的颜色

代码颜色
w白色
k黑色
b蓝色
r红色
c蓝绿色
g绿色
m品红/洋红
y黄色

实例

我们画出两个多项式的图形 :

  • f(x) = 3x4 + 2x3+ 7x2 + 2x + 9 and
  • g(x) = 5x3 + 9x + 2

创建脚本文件:


x = [-10 : 0.01: 10];
y = 3*x.^4 + 2 * x.^3 + 7 * x.^2 + 2 * x + 9;
g = 5 * x.^3 + 9 * x + 2;
plot(x, y, 'r', x, g, 'g')
设置图形的颜色

设置坐标轴刻度

axis命令允许您设置axis刻度。您可以按照以下方式使用axis命令提供x和y轴的最小值和最大值:


axis ( [xmin xmax ymin ymax] )

实例

创建脚本文件并键入以下代码:


x = [0 : 0.01: 10];
y = exp(-x).* sin(2*x + 3);
plot(x, y), axis([0 10 -1 1])
设置坐标轴刻度

生成子图

在同一图中创建图形数组时,每个图形称为子图。subplot命令用于创建子图。

生成子图的语法


subplot(m, n, p)

其中,m和n是绘图数组的行数和列数,p指定放置特定绘图的位置。

使用subplot命令创建的每个地块可以有自己的特征。下面的例子来说明这个概念:

比如画这两个函数的图:

  • y = e−1.5xsin(10x)
  • y = e−2xsin(10x)

x = [0:0.01:5];
y = exp(-1.5*x).*sin(10*x);
subplot(1,2,1)
plot(x,y), xlabel('x'),ylabel('exp(–1.5x)*sin(10x)'),axis([0 5 -1 1])
y = exp(-2*x).*sin(10*x);
subplot(1,2,2)
plot(x,y),xlabel('x'),ylabel('exp(–2x)*sin(10x)'),axis([0 5 -1 1])

结果:

生成子图



公众号

关注公众号,获取一手资讯

“ MATLAB 画图 ” comments 0

评论/回复

电子邮件地址不会被公开。 必填项已用*标注