MATLAB 绘图

MATLAB 绘图

要绘制函数的图形,您需要按照以下步骤进行操作−

  • 定义 x ,通过指定变量 x 的取值范围来绘制函数

  • 定义函数 y = f(x)

  • 调用 plot 命令,即 plot(x, y)

以下示例将演示这个概念。我们绘制简单的函数 y = x ,其中x的取值范围为0到100,增加步长为5。

创建一个脚本文件并输入以下代码−

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

当你运行文件时,MATLAB会显示以下图形:

MATLAB 绘图

让我们再举一个例子来绘制函数 y = x2。在这个例子中,我们将绘制两个具有相同函数的图形,但是第二次我们将减小增量的值。请注意,随着增量的减小,图形变得更加平滑。

创建一个脚本文件,输入以下代码 –

x = [1 2 3 4 5 6 7 8 9 10];
x = [-100:20:100];
y = x.^2;
plot(x, y)

当你运行文件时,MATLAB将显示以下图形-

MATLAB 绘图

x = [-100:5:100];
y = x.^2;
plot(x, y)

MATLAB绘制了一个更平滑的图形 –

MATLAB 绘图

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

MATLAB允许您在图表上添加标题、x轴和y轴标签、网格线,并且调整轴以美化图表。

  • xlabelylabel 命令生成沿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

MATLAB生成以下图形 –

MATLAB 绘图

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

您可以在同一张图上绘制多个函数。下面的例子演示了这个概念-

示例

创建一个脚本文件,然后输入以下代码-

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

MATLAB生成以下图表−

MATLAB 绘图

设置图表颜色

MATLAB提供了8种基本的颜色选项来绘制图表。以下表格显示了颜色及其代码:

Code Color
w White
k Black
b Blue
r Red
c Cyan
g Green
m Magenta
y Yellow

示例

让我们绘制两个多项式的图像

  • f(x) = 3×4 + 2×3 + 7×2 + 2x + 9

  • g(x) = 5×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会生成以下图形−

MATLAB 绘图

设置坐标轴刻度

axis命令允许您设置坐标轴刻度。您可以使用以下方式在x轴和y轴上提供最小和最大值来使用axis命令-

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会生成以下图形 –

MATLAB 绘图

生成子图

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

命令的语法为 –

subplot(m, n, p)

其中, m 和 n 是绘图数组的行数和列数,而 p 指定将特定绘图放置在哪里。

使用subplot命令创建的每个绘图都可以有自己的特点。下面的示例演示了这个概念 –

示例

让我们生成两个绘图 –

y = e −1.5x sin(10x)

y = e −2x sin(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 绘图

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程