12天的努力,我看完了586页书,学了MATLAB,过得很累,但我心里很舒坦。我不用再为别的事情烦心了,因为我在一门心思的学习,我花了我将近所有的课余时间。只有这样,我才能用自己身体上的累来掩盖我自己心里面的累。这么多年了,几乎每天我都在自己的挣扎中度过。还好,一切就快过去,我有我自己的生活。我不要可怜,我不要虚心假意,我只要我自己过得好。别人能那么自私的对我,我为什么还要那样对他,值得吗?其实,没有人懂我的心,也没有人懂我,我做的这一切,不会有人知道,因为它永远的埋在了我的心里。风,带走我的思念吧!
这纯属瞎扯淡,不用理会我的牢骚。下面是我这12天的笔记,如果有爱好MATLAB或者正在学习的再或者想学的,我希望你们能看看我的笔记,这对你们会有帮助的,我相信。因为这是我的汗水和心血!
1 概述安装介绍
略
2 矩阵和数组
2.1 创建特殊矩阵函数
Compan
Diag 对角矩阵
Eye 单位矩阵
Gallery 测试矩阵
Hadamard
Hilb
Invhilb invhilb矩阵
Magic
On
Rand 均匀分布随机矩阵
Randn 正态分布随机矩阵
Rosser 经典对称特征测试矩阵
Wilkinson
Zeros
注:diag(A,n)以向量A为主对角线为基准偏移n个位置
2.2 矩阵连接
水平
垂直
连接函数
Cat 指定方向
Cat(1,a,b)水平
Cat(2,a,b)垂直
Horzcat 水平方向
Vertcat 垂直方向
Repmat 对现有矩阵复制粘贴
Blkdiag 以对角阵方式重组
2.3 改变矩阵形状
Reshape 制定行列重排
Rot90 逆时针90
Filplr 垂直方向为轴旋转180
Flipud 水平方向为轴旋转180
Flipdim 指定方向为轴翻转矩阵
2.4 向量生成函数
Linspace(a,b)首尾为a,b的100个数
Linspace(a,b,n)
Logspace(a,b)以10为底
Logspace(a,b,n)
Logspace(a,pi)
2.5 矩阵信息的获取
Isempty 判断为空
Isscalar 判断为标量
Isvector 判断向量
Issparse 判断稀疏矩阵
Isa 判断指定数据类型
Iscell 判断元胞数组类型
Iscellstr 元胞字符串数组类型
Isfloat 判断浮点数
Isinteger 判断整形类型
Islogical 判断逻辑类型
Isnumeric 判断数值类型
Isreal 判断实数类型
Isstruct 判断结构体类型
Length 最长维长度
Ndims 维数
Numel 元素个数
Size 指定维长度
2.6 高维矩阵
Squeeze 删除大小为1的维
Flipdim(a,n) 翻转,第n维为基准
Shiftdim(a,n) 移动数组,前n维到右边
Permute(a,order)按order向量重排
3 数据类型
3.1 数值类型
复数:i,j等价
无穷:inf,-inf
非数:NaN
0*inf=nan
Isnan判断非数
3.2 逻辑类型
Ture/false 设置真假
Logical 数值转换成逻辑
&,|,~,xor,any,all 逻辑运算符
&&,|| 短路式运算符
==,~=,<,>,<=,>= 关系运算符
Strcmp,strncmp,strcmpi,strncmpi字符串比较
3.3 字符与字符串
创建可用到strcat
二维字符数组创建时每行字符列相同
Deblank 提取字符串,删除末尾空格
比较函数:Strcmp,strncmp,strcmpi,strncmpi加n的是比较前n个字符,加i的不分大小写,返回0/1
3.4 元胞
创建:直接赋值方式;cell函数
包含的元素不用()而用{}
Celldisp 显示具体内容
Cellstr 用于字符串元胞数组
Length 查询元胞长度
Iscell 判断是否为元胞类型
Char 元胞数组到字符数组转变
3.5 构架
构架是带有域的数组
创建:直接创建;struct函数
4 MATLAB数值运算
4.1 矩阵基本运算
加减简单
乘法(K*M)*(M*N)才可行
除法分为左除和右除,值不同
求幂 要求方阵
按位运算 .*
4.2 关系运算和逻辑运算
关系运算符:>
逻辑运算符:& | && || ~
异或:xor
数位逻辑与:bitand(a,b)
数位逻辑或:bitor(a,b)
数位逻辑非:bitcmp(a,n)
数位异或:bitxor(a,b)
关系逻辑函数:
Xor(a,b)异或
Any(a)或
All(a)与
Isaqual(a,b)对应相等为1
Ismember(a,b)a元素属于b相应位置为1
4.3 运算符优先级
略
5 绘图
5.1 相关函数
管理类:figure、subplot、zoom、hold、view、rotate
生成类:plot、line、stem、polar、fill、plotyy、plot3、surf、surfc、mesh、meshz、contour、contour3、contourf、waterfall、cylinder
注释和特性类:xlabel、ylabel、zlabel、text、text3、title、legend、box、set、grid、axes、axes equal、axes off、colorbar、clabel、colormap
5.2 基本绘图指令
Polar 极坐标中画圆
Polar(t’,r1)若在一个图中画几个图形用[]分别括起来,如:
[t’ t’],[r1 r2]
线形设计:
线形:-
颜色:r g b c m y k w
点标记:+ o * . x s d h p > < ^ v
多图绘制:subplot
双轴绘图:plotyy
5.3 图形标注
函数:title、xlabel、ylabel、zlabel、legend(图例)、colorbar(色彩条)、annotation(标注元素)
对齐属性值:
HorizontalAlignment(水平):left、center、right
VerticalAlignment(垂直):middle、top、cap、basline、battom
封闭区间填充:fill(a,b,‘c’)在使用之前使用hold命令
5.4 模式化绘图
柱状图:bar或barh其模式有mode、stacked(堆在一个柱中)加引号
面积图:area
饼图:pie
直方图:hist(da
玫瑰图:rose(da
离散数据绘图:stem
阶梯图:stairs
等高线图:contourf(填充式)
标注:colorbar填充,clable普通
罗盘图:compass
羽毛图:feather
向量场:quiver
函数绘图:涉及函数句柄
flplot(fun,limits)
ezplot(fun,[xmin,xmax,ymin,ymax]
ezpolar(fun,[a,b])
ezcontour(fun)
ezcontourf(fun)
5.5 三维绘图
(1) 数据准备
(2) 绘图区创建
(3) 绘图
(4) 设置视角
(5) 设置颜色表
(6) 设置光照效果
(7) 设置坐标轴和比例
(8) 标注图形
(9) 保存打印或导出
Plot3:曲线
Mesh(X,Y,Z):曲面
Meshc在mesh的基础画等高线
Meshz在mesh的基础上垂直连XY面
Surf(X,Y,Z)
Surfc等高线
Surfl(X,Y,Z,S)加光照效果
曲线旋转成面:
[X,Y,Z]=cylinder(R,N) N:线的条数
柱状图:bar3(da
饼状图:pie3
离散点图:scater3和stem3
向量场图:quiver3(X,Y,Z,U,V,W,S)其中S为缩放比例
等高线图:contour3(X,Y,Z,n)
其中n为等高线划分的条数
函数绘图:
eplot3(funx,funy,funz,[tmin,tmax])指定范围的三维曲线
emesh(fun,domain)网线曲面
ezmeshc(fun,domain)带等高线
ezsurf(fun,domain)填充曲面
ezsurfc(fun,domain)带等高线
其中domain=[xmin,xmax,ymin,ymax]
显示控制:
Hidden:设置显示挡住的实体图形
Axes:坐标轴比例设置
View:设置视角
着色:加一指示颜色的数组
Colormap:颜色索引范围的设定
Shading:过渡设置,其参数有faceted,flat和interp
Light:光照设置,参数有color,style(infinit和local)和position