【新星计划】MATLAB plot绘制图像

在MATLAB中绘制函数图形的步骤如下:

  1. 先定义变量 x,通过指定的变量 x 值的范围,该函数被绘制;

  2. 然后定义函数, y = f(x);

  3. 最后调用 plot 命令,如 plot(x, y)。

接下来我们通过例子绘制简单的函数 y = x , x 值的范围从0到100,增量为5。

在MATLAB中建立一个脚本文件,输入下述代码:

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

运行该文件,MATLAB会显示下述图形:

图片

让我们举一个例子,绘制函数 y = x2。

在这个例子中,我们将绘制两个图形具有相同的函数,但在第二次,我们将减少值的增量。

请注意,因为减少了增量,图形会变得平滑。

在MATLAB中建立一个脚本文件,输入下述代码:​​​​​​​

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添加标题,标签,网格线和缩放的图形

我们可以在 MATLAB 中添加标题,调整 x 轴和 y 轴,网格线,并沿标签美化图形。

  • xlabel 和 ylabel 指令产生沿 x 轴和 y 轴的标签。

  • 标题命令允许你生成图表上的一个标题。

  • 网格命令允许你生成图上的网格线。

  • 轴等于命令允许生成与同等规模因素和空间两个坐标轴上的积点。

  • 轴方形命令生成一个正方形的积点。

详细示例

在MATLAB中建立一个脚本文件,输入下述代码:

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在同一张图上绘制多个函数

在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包含了八个绘制图形的基本颜色选项,下表提供了显示的颜色以及相应的代码:

图片

具体示例

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

  1. f(x) = 3x4 + 2x3+ 7x2 + 2x + 9 and

  2. g(x) = 5x3 + 9x + 2

在MATLAB中建立一个脚本文件,并输入下述代码:

​​​​​​​

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设置轴刻度

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

  •  
axis ( [xmin xmax ymin ymax] )

具体示例

在 MATLAB 中建立一个脚本文件,并输入下述代码:

​​​​​​​

x = [0 : 0.01: 10];y = exp(-x).* sin(2*x + 3);plot(x, y), axis([0 10 -1 1])

运行该文件,MATLAB会生成下图:

图片

MATLAB生成子图

当创建一个数组地块在相同的数字,这些地块被称为子图。

MATLAB 中使用 subplot 命令创建子图。

 subplot 命令的语法如下:

  •  
subplot(m, n, p)

其中,m 和 n 为积阵列的行和列的数量,p 指定把一个特定的积。

subplot 命令建立的每个绘图都可以有其自己的特点。

具体示例

让我们生成下述的两个图:

  • y = e−1.5xsin(10x)

  • y = e−2xsin(10x)

在MATLAB中建立一个脚本文件,并输入下述代码:

​​​​​​​​​​​​​​

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会生成下图:

图片

  • 3
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值