matlab-day05

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

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

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

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

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

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

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

matlab-day05_第1张图片
绘制函数 y = x2。

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

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

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

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

matlab-day05_第2张图片
换成步长为5
matlab-day05_第3张图片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 equa

matlab-day05_第4张图片

matlab-day05_第5张图片

matlab-day05_第6张图片
MATLAB在走势图上的颜色设置
MATLAB包含了八个绘制图形的基本颜色选项,下表提供了显示的颜色以及相应的代码:
matlab-day05_第7张图片
matlab-day05_第8张图片
练习:
在一个程序中绘制如下多项式:
在这里插入图片描述
matlab-day05_第9张图片
MATLAB设置轴刻度
该轴命令允许您设置轴的刻度,您可以提供的最小值和最大值的 x 和 y 轴,使用轴命令的方式如下:

axis ( [xmin xmax ymin ymax] )

matlab-day05_第10张图片
MATLAB生成子图
当创建一个数组地块在相同的数字,这些地块被称为子图。

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

subplot 命令的语法如下

subplot(m, n, p)

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

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

生成如下子图

在这里插入图片描述

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 中使用 bar 命令绘制一个二维条形图。

具体示例
如果有一个包含10名学生的教室,这些学生获得的分数的百分比是75,58,90,87,50,85,92,75,60和95,使用这个数据,我们将绘制条形图。

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

x = [1:10];
y = [75, 58, 90, 87, 50, 85, 92, 75, 60, 95];
bar(x,y), xlabel('Student'),ylabel('Score'),
title('First Sem:')

matlab-day05_第11张图片

饼图

matlab-day05_第12张图片
MATLAB绘制等值线
contour 线的两个变量的函数的曲线,沿着该函数具有一个恒定值。加入等于标高点,一个给定的水平,如平均海平面以上用于创建等高线图等高线。

MATLAB 提供了一个轮廓绘制等高线图的函数。

具体例子
让我们生成的等高线图,显示了对于一个给定的功能的轮廓线 g = f(x, y)。这个函数有两个变量,因此,我们将生成两个独立的变量,即两个数据集 x 和 y。这是通过调用 meshgrid 命令。

meshgrid 命令是用于产生一个矩阵的元素,赋予 x 和 y 的范围内进行了在每一种情况下的增量同规格一起。

让我们绘制函数 g = f(x, y), where −5 ≤ x ≤ 5, −3 ≤ y ≤ 3,这两个值的增量为0.1。这些变量设置语法为:

[x,y] = meshgrid(-5:0.1:5,-3:0.1:3); %independent variables
g = x.^2 + y.^2;                     % our function
[C, h] = contour(x,y,g);   

matlab-day05_第13张图片

MATLAB绘制三维图

matlab-day05_第14张图片

[x,y] = meshgrid(-2:.2:2);
g = x .* exp(-x.^2 - y.^2);
surf(x, y, g)

matlab-day05_第15张图片

散点图

matlab-day05_第16张图片
matlab-day05_第17张图片

【例2.1】将矩阵[1,2;3,4]赋值给矩阵a,将a矩阵中的每个元素加1,赋值到矩阵b,将矩阵a的第1行第2列元素置为0,将矩阵a的第2列元素全置为0,求矩阵b转置、逆、秩。

【例2.2】矩阵a=[1,2;3,4],矩阵b=[5,6;7,8],实现两矩阵加、减、乘、点乘。

【例2.3】新建m文件,名称为Three _ass_add,在文件中实现对3个字符赋值(分别赋值为2、3、4),以及实现3个字符相加,其中,3个字符相加通过定义函数Three_add实现

了解计算机编程语言的读者一定知道,编程的基本流程控制语句主要有4种,分别是if语句、for语句、while语句和switch语句。下面分别用实例进行讲解如何在MATLAB中使用这四类语句。
【例2.4】矩阵a=[1,2,3;4,5,6;7,8,9],如果矩阵a中元素为5或为6时,将元素置为0。要求分别通过for、if语句实现,while、if语句实现,for、switch语句实现。
通过for、if语句实现的For_if.m文件程序:

你可能感兴趣的:(matlab,matlab,开发语言,图像处理)