MATLAB入门知识

目录

MATLAB变量名命名规则

MATLAB的常用清除指令和注释

MATLAB的数据类型

1.数字

2.字符和字符串

3.矩阵

4.元胞数组

5.结构体

矩阵的定义和构造

矩阵的四则运算

矩阵的下标

MATLAB的程序结构

MATLAB的二维绘图

MATLAB的三维立体绘图

MATLAB图形窗口的分割


MATLAB变量名命名规则

 

 

MATLAB的常用清除指令和注释

清除指令

 

clear all是清除右边视图(有点像VS2019的监视视图)中的全部变量

clc是清除下方命令行窗口(Command Window)的全部变量

注释指令

一个%注释没有横线

两个%注释会有横线

MATLAB的数据类型

 

1.数字

可以为整数或者小数

2.字符和字符串

用 ' '包括的一串内容,可以按照用来的样子进行输出,如中文和英文句子。

 

abs:输出数字绝对值

char:输出字母

num2str:num  to  string 将数字转换成字符串输出

length:计算长度

3.矩阵

矩阵定义方法

变量名=[1 2 3; 4 5 6; 7 8 9]

这就定义了一个3*3的矩阵

转置矩阵

A=[1 2 3; 4 5 6; 7 8 9];

它的转置矩阵就是A'=[1 4 7; 2 5 8; 3 6 9];

拉长矩阵

A=[1 2 3; 4 5 6; 7 8 9];

它的拉长矩阵为  A(:)

A(:)为

 

 

是按照列进行排列

逆矩阵

逆矩阵的定义方法为   变量名=inv(A)     表示求A的逆矩阵

同时要注意,只有方阵才有逆矩阵,A必须为方阵

零矩阵

零矩阵的定义方法    变量名=zeros(行数,列数,维度)

第一个参数为矩阵行数

第二个参数为矩阵列数

第三个参数为矩阵维度,如二维和三维

生成随机数矩阵

定义方法

 

rand语句不仅仅可以生成随机数,还可以生成随机矩阵

4.元胞数组

 

元胞数组跟C语言中的结构体有点像,可以建立一个可以容纳多种类型数据的数据类型,定义方法如下:

A=cell(1,6)  表示建立一个一行六列的元胞数组

A{2} = eye(3) 表示在其中第2个位置建立一个3*3的单位矩阵

A{5} = magic(5) 表示在其中第五个位置建立一个5*5的幻方矩阵

幻方的概念

 

5.结构体

 

结构体变量名=struct()

其中books结构体中有两个元素,分别为name和price,name中有两个字符串,分别存储在name (1)name (2) 中。

其中   book.name(1) 取出的是cell类型的   ‘Machine Learning’

但是用   book.name{1} 取出的是字符串类型的  Machine Learning

前者有‘  ’      ,后者没有单引号。

矩阵的定义和构造

 

A是定义了一个行矩阵

B= 1:2:9

表示建立一个最小值为1,最大值为9,且增长为2的一个数组

执行B后会生成    1 3  5  7  9

倘若最大值无法与增加后的数对应,则取去较小值

如  B=1 :3 : 9

执行生成为   1  4   7

C=repmat(B,3,1)

表示以B为基本元素,复制出一个3行1列的矩阵,这条语句的结果为:

 

矩阵的四则运算

+:  即矩阵相加,需要为同型矩阵。

-:即矩阵相减,需要为同型矩阵。

*:即矩阵乘法,需要满足前行等于后列。

.*:即矩阵点乘,需要为同型矩阵,相同位置的矩阵元素相乘。

/ :即矩阵相除,相当于乘以后者的逆矩阵。

./ :即矩阵点除,与矩阵相除关系不大,需要同型矩阵,相同位置的矩阵元素相除。

矩阵的下标

 

A={        },这是矩阵定义的基本格式,而A(行数,列数)可以反应矩阵的下标

其中 C= A(3 ,:)表示取出矩阵的第3行给B

相应的 D 得到 A 的第4列

[ m, n ] = find (A>20)

则表示在A矩阵中寻找打于20的矩阵元素,返回它的行标和列标

MATLAB的程序结构

 

总地来说,分为顺序结构循环结构选择结构

跟C语言的for      while        if        if..else         switch

相差不大,格式方面有一定的区别

必须以  end  结尾

for循环结构:

需要注意的是,步长默认为1

while循环结构:

 

选择结构

if....end

只有一种分支的选择结构

if....else....end

提供两种分支的选择结构

 

switch...case...end

提供多种分支的选择结构

 

MATLAB的二维绘图

我想通过例子讲解更加简单

 

x= 0 : 0.01 : 2 * pi ;

pi表示2*π,在MATLAB中π由pi表示。

x就等于一个最小值为0,最大值为2*pi,增长为0.01的一个数组

y= sin(x);

表示 y 的值为 sin (x)

figure表示建立一个幕布

plot(x,y);表示绘制一个关于 x 和 y 的一个二维的图

title (' y = sin (x) '); 表示将图的标题设置为  y = sin(x)

xlabel ('x') 和  ylabel(‘sin(x)’)表示给图的 x轴和 y轴设置标签

xlim([0  2*pi ])表示给图的x轴 设置范围为0到2*pi

最终结果为:

 

颜色选择

 

线形选择和数据标记点选项参数

 

应用举例

其中

中的第一句表示绘制一个含义两个因变量的图,H1为第一个函数图像,H2为第二个函数图像

set表示设置的意思

第二句表示得到第一条图像的Y轴标签,‘string’表示标签名类型,

‘Slow Decay’ 表示标签名内容

set(H1,linestyle,‘--’)

表示设置H1函数图像的线型为虚线

MATLAB的三维立体绘图

 

 

总的来说,与二维建立图形是差不多的

但是生成图时的函数为   plot3(x,y,z)表示建立三维图,其中参数有三个,分别为三维图的三个坐标。

然后分别给 x, y , z 建立标签

hold on   表示在上面的幕布中再加入一些函数图像

hold off  表示删除上面的幕布中的信息,重新绘制相应的函数图像

grid on   在幕布上打印一些格子,让图像更加具有立体感

axis square  使xyz的长度相同,让坐标系看起来是一个正方体

使用后的效果:

 

打印MATLAB软件图标

 效果为

 

MATLAB图形窗口的分割

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值