MATLAB - 绘图
要绘制函数图,您需要执行以下步骤 -
-
定义 x ,通过指定值的范围 对于变量 x , 为其绘制函数
-
定义函数,y =f(x)
-
调用情节 命令,如 plot(x, y)
以下示例将演示该概念。让我们绘制简单函数 y =x x 的取值范围为 0 到 100,增量为 5。
创建一个脚本文件并输入以下代码 -
x = [0:5:100]; y = x; plot(x, y)
运行文件时,MATLAB 会显示以下图 -
让我们再举一个例子来绘制函数 y =x 2 .在本例中,我们将使用相同的函数绘制两个图形,但在第二次中,我们将减小增量的值。请注意,随着我们减少增量,图形会变得更平滑。
创建一个脚本文件并输入以下代码 -
x = [1 2 3 4 5 6 7 8 9 10]; x = [-100:20:100]; y = x.^2; plot(x, y)
运行文件时,MATLAB 会显示以下图 -
稍微修改一下代码文件,把增量减少到5 -
x = [-100:5:100]; y = x.^2; plot(x, y)
MATLAB 绘制更平滑的图形 -
在图表上添加标题、标签、网格线和缩放
MATLAB 允许您添加标题、沿 x 轴和 y 轴的标签、网格线,还可以调整轴以美化图形。
-
xlabel 和 ylabel 命令沿 x 轴和 y 轴生成标签。
-
标题 命令允许您在图表上放置标题。
-
上的网格 命令允许您在图形上放置网格线。
-
轴相等 命令允许生成具有相同比例因子和两个轴上的空间的绘图。
-
轴正方形 命令生成一个正方形图。
示例
创建一个脚本文件并输入以下代码 -
x = [0:0.01:10]; y = sin(x); plot(x, y), xlabel('x'), ylabel('Sin(x)'), title('Sin(x) Graph'), grid on, axis equal
MATLAB 生成如下图 -
在同一张图上绘制多个函数
您可以在同一个图上绘制多个图形。下面的例子演示了这个概念 -
示例
创建一个脚本文件并输入以下代码 -
x = [0 : 0.01: 10]; y = sin(x); g = cos(x); plot(x, y, x, g, '.-'), legend('Sin(x)', 'Cos(x)')
MATLAB 生成如下图 -
在图表上设置颜色
MATLAB 提供了八种用于绘制图形的基本颜色选项。下表显示了颜色及其代码 -
代码 | 颜色 |
---|---|
w | 白色 |
k | 黑色 |
b | 蓝色 |
r | 红色 |
c | 青色 |
g | 绿色 |
m | 洋红色 |
是 | 黄色 |
示例
让我们画两个多项式的图
-
f(x) =3x 4 + 2x 3 + 7x 2 + 2x + 9 和
-
g(x) =5x 3 + 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')
运行文件时,MATLAB 会生成以下图形 -
设置轴刻度
轴 命令允许您设置轴比例。您可以通过以下方式使用轴命令提供 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])
运行文件时,MATLAB 会生成以下图形 -
生成子图
当您在同一个图中创建一组图时,这些图中的每一个都称为子图。 次要情节 命令用于创建子图。
该命令的语法是 -
subplot(m, n, p)
其中,m 和 n 是绘图数组的行数和列数,p 指定放置特定图的位置。
使用 subplot 命令创建的每个图都可以有自己的特征。以下示例演示了这个概念 -
示例
让我们生成两个图 -
y =e −1.5x 罪(10x)
y =e −2x 罪(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 会生成以下图形 -
MATLAB